2016-06-07 70 views
0

我想重命名在OSX中打開的終端標籤,但我只能用下面的代碼更改終端標題。有沒有辦法使用命令更改Tab標題?我正在使用Python 2.7的osascript。使用命令自動重命名終端標籤

name = """osascript -e 'tell application "Terminal" to set custom title in selected tab of the front window to "script_1"'""" 
os.system(name) 

手動:殼牌>編輯標題(SHIFT + COMMAND + I)>標籤標題

回答

0

這應該這樣做:

title='Customized title for TAB' 
os.system('echo -n -e "\033]0;{}\007"'.format(title)) 
+0

沒有** joel goldstick **的代碼,它不起作用。 – hzleonardo

2

使用$標題沒有工作我,但這樣做:

>>> t = 'echo -n -e "\033]0;%s\007"' % title 
>>> t 
'echo -n -e "\x1b]0;Customized title for TAB\x07"' 
>>> os.system(t) 
-e 0 
>>> 
+0

它的功能和我的代碼一樣。它改變終端標題而不是標籤標題。 – hzleonardo

+0

我在lubuntu linux(LXTerminal 0.1.11)上,它更改了選項卡和活動選項卡中的標題。 Osx正在使用不同的終端。我不是這方面的專家,但我修補了它,並且讓它工作。我認爲在python中設置一個變量可能會有問題,然後期望shell知道它是一個環境變量。 –

+0

我想這是Osx問題,而不是關於python,我試過用Ubuntu,它的工作原理。但我認爲沒有選項可以更改標題標題是Osx。 – hzleonardo

0

這裏是th e使用鍵打開檢查員的解決方案,更改標題並關閉檢查員。因爲根據我的研究,使用現成的蘋果腳本無法更改OSX上的標籤標題。

它工作的很好,所以無需等待Apple發佈此選項。

tabinspector = """osascript -e 'tell application "System Events" to keystroke "i" using {shift down,command down}'""" 
pressstab = """osascript -e 'tell application "System Events" to keystroke Tab'""" 
title = """osascript -e 'tell application "System Events" to keystroke "yourtitlehere"'""" 
pressesc = """osascript -e 'tell application "System Events" to key code 53'""" 

os.system(tabinspector) 
os.system(pressstab) 
os.system(title) 
os.system(pressesc) 
1

我發現這一個非常有用的,因爲它不打印不必要的輸出不像我的實驗與子或使用os.system導致在控制檯「-e」的不必要的外觀到標準輸出。

import sys 
sys.stdout.write("\x1b]2;%s\x07" % 'TAB name')