Недавно я задал этот вопрос, как настроить цвета шрифтов терминала bash. На этот вопрос был дан ответ, и я получил нужные цвета, используя ссылку, предоставленную полезным пользователем.
Команда, которую я искал, была:
export PS1="\e[1;34m\u@\H : \e[m\[$(tput sgr0)\]"
Который дает мне следующее, в желаемом цвете:
user@host :
Однако после использования это какое-то время, я замечаю, что мой терминал bash в настоящее время довольно затруднен при записи и доступе к истории команд. этот поток описывает точный вопрос, который у меня есть, и решение: «используйте \[...\] вокруг частей PS1 с длиной 0».
Мне кажется, что я пробовал все, чтобы сделать именно это в моем PS1, но история по-прежнему остается неисправной. Может кто-нибудь, пожалуйста, указать, что мне не хватает?
Эти части PS1 имеют длину 0, потому что они устанавливают форматирование (используя escape-последовательности ANSI), но не производят никакого другого выхода:
\e[1;34m
\e[m
$(tput sgr0)
Также:
Вы можете вынуть $(tput sgr0), потому что \e[m делает то же самое. Поместите PS1 в одинарные кавычки, чтобы переменные и команды в нем были динамическими, а не статическими. (Хотя это не важно в этой ситуации.)Итак, вы ищете эту команду:
export PS1='\[\e[1;34m\]\u@\H : \[\e[m\]'
Эти части PS1 имеют длину 0, потому что они устанавливают форматирование (используя escape-последовательности ANSI), но не производят никакого другого выхода:
\e[1;34m
\e[m
$(tput sgr0)
Также:
Вы можете вынуть $(tput sgr0), потому что \e[m делает то же самое. Поместите PS1 в одинарные кавычки, чтобы переменные и команды в нем были динамическими, а не статическими. (Хотя это не важно в этой ситуации.)Итак, вы ищете эту команду:
export PS1='\[\e[1;34m\]\u@\H : \[\e[m\]'
Эти части PS1 имеют длину 0, потому что они устанавливают форматирование (используя escape-последовательности ANSI), но не производят никакого другого выхода:
\e[1;34m
\e[m
$(tput sgr0)
Также:
Вы можете вынуть $(tput sgr0), потому что \e[m делает то же самое. Поместите PS1 в одинарные кавычки, чтобы переменные и команды в нем были динамическими, а не статическими. (Хотя это не важно в этой ситуации.)Итак, вы ищете эту команду:
export PS1='\[\e[1;34m\]\u@\H : \[\e[m\]'