Я добавил следующую строку в свой файл ~/.bashrc, чтобы изменить заголовок вкладки:

export PROMPT_COMMAND='echo -e "\033];My Machine\007"'

После того, как я отправлю файл, мое приглашение добавляет новую пустую строку после каждой команды. Например:

user machine ~:> pwd
/a/path/whatever

user machine ~:>

Я не хочу, чтобы там была третья пустая строка. Я протестировал поиск своего .bashrc с строкой PROMPT_COMMAND и без нее, и я знаю, что это оскорбительная строка. Есть идеи?

0
smilebomb 11 Май 2016 в 16:42

2 ответа

Лучший ответ

Попробуй это:

export PROMPT_COMMAND='echo -en "\033];My Machine\007"'

1
RaviTezu 11 Май 2016 в 13:46

Исправление пластыря состоит в использовании echo -en, если ваш echo поддерживает это (подавление новой строки).

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

PS1="\[\033]0;My Machine\007\007\]$PS1"

\[ \] следят за тем, чтобы ширина того, что между ними, не влияла на счет длины строки.

Существуют предопределенные escape-последовательности, поэтому вам не нужно жестко кодировать имя компьютера, см. руководство . Например это

PS1="\[\e]0;\u@\h: \w\a\]$PS1"

Использует \e и \a вместо \033 \ и \007 для экранирования и звонка и устанавливает заголовок вкладки на user@hostname: currentdir.

См. Также соответствующий раздел в Bash Prompt HOWTO и заголовок Xterm HOWTO.

1
Benjamin W. 11 Май 2016 в 14:06