Linux настройка строки приглашения

Содержание
  1. Настройка строки приглашения в bash
  2. Формат строки приглашения в bash
  3. Последовательность символов, отображающих время и дату
  4. Специальные символы, изменяющие значение в зависимости от пользователя и хоста
  5. Местоположение
  6. Прочее
  7. Пример использования
  8. Изменение цвета символов
  9. Свойства цвета и их численное обозначение
  10. Цвет
  11. Пример использования
  12. Заключение
  13. Настройка вида приглашения командной строки в Bash
  14. Как изменить приглашение (только для данной сессии)
  15. Как изменить приглашение на постоянной основе
  16. Как изменить цвета в строке приглашения
  17. Примеры
  18. Список возможных настроек приглашения
  19. Настройка приглашения командной строки в Bash
  20. В какой переменной задается приглашение
  21. Как изменить приглашение (только для данной сессии)
  22. Настройка приглашения
  23. Примеры
  24. Пример 1
  25. Пример 2
  26. Пример 3
  27. Как изменить цвета в строке приглашения
  28. Примеры
  29. Пример 1
  30. Пример 2
  31. Как изменить приглашение на постоянной основе

Настройка строки приглашения в bash

Строка приглашения в bash – то, что печатается в терминал до начала ввода команды. К примеру, по умолчанию у меня это выглядит как-то так:
Как видно, достаточно неприметный вид, ничем не выделяется. А значит сложный поиск введённых команд среди вывода bash. Рецепт в статье универсальный, будут работать как для Ubuntu 16.04, так и в Archlinux.

Формат задаётся с помощью глобальной переменной PS1, узнать её значение можно с помощью echo:
$ echo $PS1

Изменить её можно следующим образом (пока консоль не закроется):
$ PS1=’значение’

Формат строки приглашения в bash

В переменную PS1 можно записать обычные символы, но они не представляют собой какого-то практического интереса, служат скорее для декорации. В то же время существуют и специальные символы, выполняющие какую-то функцию.

Последовательность символов, отображающих время и дату

Символы Значение
d Дата в формате: день недели, текущий месяц, число
t Время в 24-часовом формате: часы, минуты, секунды
T Время в 12-часовом формате: часы, минуты, секунды
@ Время в 12-часовом формате: часы, минуты, секунды + AM(утро) или PM(вечер)

Специальные символы, изменяющие значение в зависимости от пользователя и хоста

Символы Значение
H Полный hostname
h hostname до первой точки
u Текущий пользователь
$ Показывает $ – если оболочка запущена непривилегированным пользователем и # – root’ом
s Название оболочки терминала

Местоположение

Символы Значение
W Полный путь папки в которой происходит сеанс
w Сокращенный путь (отображается только имя текущей директории)

Прочее

Символы Значение
n Новая строка
# Номер команды
! Номер команды в истории bash’а
a Звуковой сигнал

Пример использования

Задав приглашение в виде ‘имя_хоста : время : номер команды -:’
PS1=’H : t : # -:’
Увидим примерно это:
ozi-linux : 08:55:35 : 8 -:

Изменение цвета символов

Цвет букв или фона меняется с помощью такой последовательности:
[е[K;Nm] Где K – номер свойства, N – номер цвета букв или фона, в зависимости от значения.

Свойства цвета и их численное обозначение

Свойство K
По-умолчанию 0
Яркий 1
Тусклый 2
Подчеркнутый 4
Обычный 5
Инвентированный 7
Скрытый 8

Цвет

Цвет N для символов N для фона
Чёрный 30 40
Красный 31 41
Зелёный 32 42
Жёлтый 33 43
Синий 34 44
Фиолетовый 35 45
Голубой 36 46
Белый 37 47

Пример использования

[е[1;47m][е[2;35m]
Эта последовательность задаёт яркий(1) белый фон(47) и тусклые(2) фиолетовые символы(35) для последующего вывода.

Заключение

Немного подумав, я выбрал такой формат:
PS1='[e[1;31m]u[e[0;32m]:[e[0;35m]w[e[0;32m]$ [e[0;37m]’
С пояснениями (переключение цвета показано окраской последовательности):

Читайте также:  Linux python run in background

Возможно выглядит это не особо эстетично, но главное – заметно. Что меня полностью и устраивает =)

Источник

Настройка вида приглашения командной строки в Bash

Вид приглашения командной строки Bash определяется переменной PS1 . Его можно просмотреть как любую другую переменную окружения:

Как изменить приглашение (только для данной сессии)

Можно установить переменную PS1 только для текущей сессии в терминале. Это удобно, пока вы подбираете, как будет выглядеть строка приглашения. Чтобы это сделать нужно выполнить команду export для переменной PS1 , например:

После выполнения команды строка приглашения в терминале сразу изменится.

Как изменить приглашение на постоянной основе

Новое значение переменной PS1 прописывается в файле .bashrc , который расположен в вашей домашней директории (файл может отсутствовать).

Откроем файл .bashrc в редакторе nano для редактирования. Для этого в терминале выполним команду:

Перейдем в конец файла и добавим новую строку, в которой пропишем значение переменной PS1 . Например:

Сохраним изменения и закроем файл. Для этого нажмите Ctrl+X, затем Y и Enter, чтобы сохранить изменения.

Теперь выполним команду source, чтобы наши изменения вступили в силу:

Перезапустите терминал. Приглашение для ввода команд будет обновлено.

Как изменить цвета в строке приглашения

Элементы строки приглашения можно раскрашивать в разные цвета.

Чтобы задавать цвета для элементов строки приглашения нужно части строки приглашения заключать в специальные символы.

Используется следующий синтаксис:

e[ — начало цветовой схемы. X;Ym — цветовая пара (X;Y). Именно значения X и Y определяют цвет. e[m — окончание цветовой схемы.

Небольшой пример, чтобы вы понимали о чем идет речь. Раскрасим всю строку целиком цветом с обозначением 0;36 .

Цвета задаются числами. Можно задавать парой X;Y или просто Y. Например, красный это — 0;31 или просто 31. Есть и другие способы задания цветов, но в данной статье мы их не рассматриваем.

Список цифровых обозначений для цветов (Y):

Цвет Числовое обозначение
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 — моргание. 

Примеры

Простой вывод текущего пользователя и полного пути:

Такойже вывод, но с подстветкой:

PS1="\[\e]0;\u@\h: \w\a\]$:+($debian_chroot)>\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ " 

Список возможных настроек приглашения

Для задания различных значений переменной PS1 существуют специальные символы. Комбинируя различные специальные символы можно составить свою строку приглашения.

Специальные символы начинаются с символа косой черты \ , за которой следует буква или символ. Ниже приведена таблица специальных символов

Обозначение Описание
\a ASCII-символ bell (07)
\d Дата в формате «День недели Месяц Дата» (например, «Пн Ноя 26»)
\D Значение 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.
\\ Символ обратной косой черты \ .
\[ Начало последовательности непечатаемых символов.
\] Конец последовательности.

Приветствую вас на сайте ZENCOD.ru! Здесь вы найдете статьи по web-разработке, javascript, linux и прочим темам, которые могут быть полезны.

Источник

Настройка приглашения командной строки в Bash

Bash Promt PS1

Приглашение можно настраивать. Можно добавлять информацию или, например, изменить цвет приглашения.

В какой переменной задается приглашение

Формат строки приглашения задается в переменной окружения PS1. Чтобы настроить приглашение, необходимо изменить значение переменной PS1.

Например, переменная PS1 может иметь значение:

Или, например, командой echo $PS1 можно вывести текущее значение переменной PS1. У меня в Ubuntu оно выглядит так:

echo $PS1 \[\e]0;\u@\h: \w\a\]$\[3[01;32m\]\u@\h\[3[00m\]:\[3[01;34m\]\w\[3[00m\]$

Не пугайтесь. На самом деле существует масса возможностей для настройки строки приглашения. Ниже мы рассмотрим базовые методы настройки.

Как изменить приглашение (только для данной сессии)

Можно установить переменную PS1 только для текущей сессии в терминале. Это удобно, пока вы подбираете, как будет выглядеть строка приглашения. Чтобы это сделать нужно выполнить команду export для переменной PS1, например:

После выполнения команды строка приглашения в терминале сразу изменится.

Настройка приглашения

Для задания различных значений переменной PS1 существуют специальные символы. Комбинируя различные специальные символы можно составить свою строку приглашения.

Специальные символы начинаются с символа косой черты « \ », за которой следует буква или символ. Ниже приведена таблица специальных символов.

Обозначение Описание
\a ASCII-символ bell (07)
\d Дата в формате «День недели Месяц Дата» (например, «Пн Ноя 26»)
\D Значение 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.
\\ Символ обратной косой черты « \ ».
\[ Начало последовательности непечатаемых символов.
\] Конец последовательности.

Примеры

Пример 1

Приглашение, состоящее из одного символа « > »:

Пример 2

Текущее время, пользователь, текущая директория:

Пример 3

Дата, пользователь, текущая директория, номер команды:

Как изменить цвета в строке приглашения

Элементы строки приглашения можно раскрашивать в разные цвета.

Чтобы задавать цвета для элементов строки приглашения нужно части строки приглашения заключать в специальные символы.

Используется следующий синтаксис:
\e[ X;Ym РАСКРАШИВАЕМАЯ_СТРОКА \e[m

\e[ — начало цветовой схемы.
X;Ym — цветовая пара (X;Y). Именно значения X и Y определяют цвет.
\e[m — окончание цветовой схемы.

Небольшой пример, чтобы вы понимали о чем идет речь. Раскрасим всю строку целиком цветом с обозначением 0;36.

Цвета задаются числами. Можно задавать парой X;Y или просто Y. Например, красный это — 0;31 или просто 31. Есть и другие способы задания цветов, но в данной статье мы их не рассматриваем.

Список цифровых обозначений для цветов (Y):

Цвет Числовое
обозначение
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 — моргание.

Примеры

Пример 1

Например, установим имя пользователя желтым цветом, а остальной текст оставим стандартным цветом (в моем случае это белый). Для указания желтого цвета используем обозначение 1;33 (как светло-коричневый).

Пример 2

Раскрасим остальные элементы строки приглашения:

export PS1="\e[1;33m\u\e[m@\e[0;96m\h\e[m \e[0;92m\W\e[m$ "

Как изменить приглашение на постоянной основе

Новое значение переменной PS1 прописывается в файле .bashrc , который расположен в вашей домашней директории (файл может отсутствовать).

Откроем файл .bashrc в редакторе nano для редактирования. Для этого в терминале выполним команду:

Перейдем в конец файла и добавим новую строку, в которой пропишем значение переменной PS1. Например:

Сохраним изменения и закроем файл. Для этого нажмите Ctrl+X , затем Y и Enter , чтобы сохранить изменения.

Теперь выполним команду source, чтобы наши изменения вступили в силу:

Перезапустите терминал. Приглашение для ввода команд будет обновлено.

Источник

Оцените статью
Adblock
detector