Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > *NIX системы: Общие вопросы > Как изменить строку приглашения (bash prompt) в терминале? |
Автор: Chuck 31.5.2005, 19:07 | ||||||||||||||||
За вид строки приглашения отвечают переменные окружения PS1 и PROMPT_COMMAND. Собственно, сам вид строки определяется в переменной PS1, а содержимое переменной PROMPT_COMMAND вычисляется каджый раз при выводе приглашения. Простая строка приглашения может выглядеть так:
При этом переменная PS1 выглядит так:
Экранированные символы u и h при генерации значения PS1 будут заменены на имя текущего пользователя и имя машины соотвественно. Таких экранированных спецсимволов около двух десятков, подробности - в man bash. Попробуем сделать следующее:
Теперь у нас над строкой приглашения болтаются часики. С помощью специальных непечатаемых escape-последовательностей можно изменять цвет символов и их фона. Такие последовательности должны быть заключены в \[\033[ и \], а после кода цвета должна стоять буква "m" Коды у цветов такие:
Покрасим нашу строку приглашения в зеленый цвет:
Короче говоря, вид bash prompt целиком и полностью зависит от вашей фантазии. Я пользуюсь таким bash prompt:
Здесь всё просто: над строкой приглашения пишется текущий каталог, а внизу - имя пользователя и машины, причем если я - рут, то имя пользователя выделяется красным цветом. Обычный пользователь:
А вот так под рутом:
Обязательно к прочтению: http://www.opennet.ru/man.shtml?topic=bash&category=1&russian=0 http://www.gilesorr.com/bashprompt/howto/book1.html |