[Comm] Re: PS1 in bash

Andrew Fefilov =?iso-8859-1?q?faqa_=CE=C1_ies=2Eudm=2Eru?=
Ср Апр 16 15:20:25 MSD 2003


On Wed, Apr 16, 2003 at 02:37:35PM +0400, Sergey Vlasov wrote:
> On Wed, 16 Apr 2003 11:08:29 +0500
> Andrew Fefilov <faqa на ies.udm.ru> wrote:
> 
> > Подскажите, пожалуйста, если не в лом. Вот захотелось мне раскрасить
> > приглашение командной строки в bash. В М2.2 стандарное значение для этого
> > :
> > [faqa на faa faqa]$ set | grep PS1
> > PS1='[\u@\h \W]\$ '
> > 
> > Оно, вообщем-то, меня устраивает. Просто хотелось его раскрасить, скажем, в
> > зелёненький. Вот сделал так:
> > 
> > [faqa на faa faqa]$ set | grep PS1
> > PS1='\033[32m[\u@\h \W]\$ \[\033[0m'
> > 
> > Т.е. сначала крашу в зелёный, затем вывожу стандартное приглашение, затем
> > сбрасываю цвет символов в умолчательный. Все так и работает, но, если
> > командная строка занимает более одной строчки, то она продолжается не со
> > следующей строчки, а затирает начало первой строчки. Где это можно
> > подправить? Вот сижу, грепаю man bash, но пока безуспечно.
> 
> Вокруг управляющих последовательностей надо ставить "\[" и "\]", чтобы
> указать, что эти коды не занимают места на экране.

Спасибо большое, Сергей, все получилось. Теперь это выглядит так:

[faqa на faa faqa]$ set | grep PS1
PS1='\[\033[32m\][\u@\h \W]\$ \[\033[0m\]'

--------------
С уважением,
Фефилов Андрей.



Подробная информация о списке рассылки community