Символы в переменной PS1


Моя переменная PS1:

[e]0;u@h: wa]${debian_chroot:+($debian_chroot)}u@h:w$

Я понимаю все, кроме первой части [e]0;u@h: wa]. Какова цель этой части? Это, кажется, не влияет на мою подсказку. На самом деле мой вопрос можно было бы свести еще больше к этой части: e]0;

2 4

2 ответа:

Escape ]0 (интересующий вас элемент \e]0) изменяет строку заголовка XTerm. Подробнее по этой ссылке: http://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/xterm-title-bar-manipulations.html

Все внутри []:

\[\e]0;\u@\h: \w\a\]

Помечается как непечатающий символ, поэтому bash может делать правильные вещи с переносом строк и т. д. В данном случае это означает "поместите текущий пользователь@hostname и текущий рабочий каталог в строку заголовка". \a - это символ колокола.

Можно также использовать escape-последовательность, чтобыраскрасить приглашение .