Как изменить название gnome-терминала в Ubuntu 10

Я попытался установить мой PROMPT_COMMAND переменной:

PROMPT_COMMAND='echo -ne "3]0;"myWindowTitle"7"'

но что-то меняет мою вкладку (или весь заголовок терминала) на"user@hostname:/current/path, таким образом

PROMPT_COMMAND='echo -ne "3]0;"myWindowTitle"7" && sleep 3'

изменяет название только на 3 секунды:)

4 ответов


PROMPT_COMMAND выдается до установки приглашения на основе PS1 переменной. Вероятно, у вас есть некоторая последовательность символов в PS1, которая устанавливает заголовок windows. Вы можете использовать unset PS1 или установите его в другое значение:

export PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w$ '

в качестве альтернативы вы можете установить заголовок окна в переменной PS1:

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

в Ubuntu .файл bashrc имеет некоторый код, который добавляет текст в переменную PS1. Этот дополнительный текст изменяет заголовок после его установки с параметром --title. Просто прокомментируйте это.

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

сделать:

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

попробуйте использовать переменную и установить это в вашем.bashrc следующее:

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

затем вы можете просто сделать это, чтобы изменить заголовок окна в строку:

WT="my new window title"

если хотите, вы можете включить путь в заголовок окна в вашем .bashrc следующее:

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

кстати, я не думаю, что вам нужно "экспортировать" PS1.


С justingordon's ответ, и работает с ним, найти второе появление PS1 набор в bashrc, который выглядит следующим образом:

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

заменить на:

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

теперь заголовок будет иметь префикс переменной TITLE. Просто измените значение TITLE в вашем терминале, например TITLE=ec2 и название сразу изменится :-)