-
Notifications
You must be signed in to change notification settings - Fork 0
Bash prompt string (ru)
В Linux Fedora одним из способов изменения строки приглашения является редактирование конфигурационных файлов. В данной статье мы рассмотрим несколько примеров, демонстрирующих, как изменить строку приглашения в терминале.
Пример:
Изменение строки приглашения в bash: Для изменения строки приглашения в bash необходимо отредактировать файл ~/.bashrc. Откройте терминал и выполните следующую команду:
$ nano ~/.bashrc
Найдите строку, начинающуюся с PS1 и измените ее на нужную вам строку приглашения.
Например, можно добавить текущую дату и время:
PS1='\[\e[0;32m\]\u@\h \[\e[0;35m\]\t \[\e[0;34m\]\w\[\e[m\]\$ '
Сохраните изменения, нажав Ctrl + X, затем Y и Enter. Затем обновите конфигурацию, выполнив следующую команду:
$ source ~/.bashrc
Теперь, когда вы открываете новый терминал, вы увидите измененную строку приглашения.
Для задания различных значений переменной PS1 существуют специальные символы. Комбинируя различные специальные символы можно составить свою строку приглашения.
Специальные символы начинаются с символа косой черты «\», за которой следует буква или символ. Ниже приведена таблица специальных символов.
Обозначение | Описание |
---|---|
\a | ASCII-символ bell (07) |
\d | Дата в формате «День недели Месяц Дата» (например, «Пн Ноя 26») |
\D{format} | Значение format передается функции strftime. В строку приглашения подставляется результат выполнения функции. Фигурные скобки обязательны. |
\e | ASCII-символ escape (033) |
\h | Hostname (имя хоста) до первого символа точка «.». |
\H | Hostname (имя хоста, компьютера). |
\j | Количество фоновых процессов, запущенных в данной оболочке |
\l | Базовое название оболочки. |
\n | Переход на новую строку. |
\r | Переход к началу строки (возврат каретки). |
\s | Имя оболочки (имя shell). |
\t | Текущее время в 24-часовом формате (HH:MM:SS). |
\T | Текущее время в 12-часовом формате (HH:MM:SS). |
@ | Текущее время в 12-часовом am/pm формате. |
\A | Текущее время в 24-часовом формате (HH:MM). |
\u | Имя пользователя. |
\v | Версия bash (например, 4.4). |
\V | Версия bash с версией релиза (например, 4.4.19). |
\w | Текущий абсолютный путь (полный путь). Домашняя директория сокращается до значка тильды «~». |
\W | Текущий относительный путь. Домашняя директория сокращается до значка тильды «~». |
! | Номер команды в истории команд (history). |
# | Номер команды в текущей сессии терминала. |
$ | Символ приглашения (# для root, $ для обычных пользователей). |
\nnn | Символ, соответствующий восьмеричному значению nnn. |
\ | Символ обратной косой черты «\». |
[ | Начало последовательности непечатаемых символов. |
] | Конец последовательности. |
Элементы строки приглашения можно раскрашивать в разные цвета.
Чтобы задавать цвета для элементов строки приглашения нужно части строки приглашения заключать в специальные символы.
Используется следующий синтаксис: \e[X;YmРАСКРАШИВАЕМАЯ_СТРОКА\e[m
\e[ - начало цветовой схемы. X;Ym — цветовая пара (X;Y). Именно значения X и Y определяют цвет. \e[m — окончание цветовой схемы.
Цвета задаются числами. Можно задавать парой X;Y или просто Y. Например, красный это — 0;31
Цвет | Числовое обозначение |
---|---|
Black | 30 |
Red | 31 |
Green | 32 |
Brown | 33 |
Blue | 34 |
Purple | 35 |
Cyan | 36 |
Light gray | 37 |
Dark gray | 90 |
Light red | 91 |
Light green | 92 |
Light yellow | 93 |
Light blue | 94 |
Light magenta | 95 |
Light cyan | 96 |
White | 97 |
При задании цвета двумя числами X;Y, первое число X принимает следующие значения: 0 — обычный цвет; 1 — будет использоваться более яркий цвет; 2 — более темный цвет; 3 — курсив; 4 — подчеркивание; 5 — моргание.
На данный момент в планах есть создание генератора строки.