2010-10-14 11 views
9

Próbowałem ustawienie moja PROMPT_COMMAND zmiennej:Jak zmienić tytuł gnome-terminal w Ubuntu 10

PROMPT_COMMAND='echo -ne "\033]0;"myWindowTitle"\007"' 

ale coś się zmienia moją kartę (lub cały tytuł terminal) do 'użytkownik @ host:/prąd/ ścieżka”tak

PROMPT_COMMAND='echo -ne "\033]0;"myWindowTitle"\007" && sleep 3' 

zmiany tytułu dla 3 sekundy tylko :)

Odpowiedz

7

PROMPT_COMMAND jest wydawane przed ustawieniem monitu na podstawie zmiennej PS1. Prawdopodobnie masz sekwencję znaków w PS1, która ustawia tytuł twojego okna. Można powołać unset PS1 lub ustawić go na inną wartość:

export PS1='${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$ ' 

Alternatywnie można ustawić tytuł okna w zmiennej PS1:

export PS1='\[\e]0;myWindowTitle\a\]${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$' 
2

W Ubuntu plik .bashrc ma jakiś kod, który dodaje do tekstu zmienna PS1. Ten dodatkowy tekst zmienia tytuł po ustawieniu go z opcją --title. Po prostu skomentuj to.

# If this is an xterm set the title to [email protected]:dir 
case "$TERM" in 
xterm*|rxvt*) 
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\[email protected]\h: \w\a\]$PS1" 
    ;; 
*) 
    ;; 
esac 
1

Zamiast zrobić:

PS1='\[\e]0;myWindowTitle\a\]${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$' 

Spróbuj użyć zmiennej i ustawienie tego w swoim .bashrc:

PS1='\[\e]0;$WT\a\]${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$' 

Następnie można po prostu to zrobić, aby zmienić tytuł okna na monit:

WT="my new window title" 

Jeśli ou jak można zawierać ścieżkę w tytule okna w swoim .bashrc:

PS1='\[\e]0;$WT: \w\a\]${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$' 

BTW, ja nie sądzę, że trzeba „wywóz” PS1.

+0

drobny niuans, jeśli umieścisz '' '' '' '' $ WT''', wtedy możesz zmienić zmienną WT 'na żywo', a to natychmiast zmieni twój tytuł terminala :-) –

0

Biorąc odpowiedź justingordon dydaktycznego oraz działa z nim, znaleźć drugą wystąpienie PS1 ustawiony w bashrc, który wygląda tak:

# If this is an xterm set the title to [email protected]:dir 
case "$TERM" in 
xterm*|rxvt*) 
    PS1="\[\e]0;\${TITLE} ${debian_chroot:+($debian_chroot)}\[email protected]\h: \w\a\]$PS1" 

zmiana:

export TITLE=bash 
# If this is an xterm set the title to [email protected]:dir 
case "$TERM" in 
xterm*|rxvt*) 
    PS1="\[\e]0;\${TITLE} ${debian_chroot:+($debian_chroot)}\[email protected]\h: \w\a\]$PS1" 

Teraz tytuł będzie poprzedzony zmienną TITLE. Po prostu zmień wartość TITLE w swoim terminalu, np. TITLE=ec2, a tytuł natychmiast zmieni :-)

Powiązane problemy