Что такое приглашение командной строки это


/ Просмотров: 94294

Приглашение в командной среде bash изменяется при помощи изменения переменных PS1, PS2, PS3, PS4 и PROMPT_COMMAND.

  • PS1 - переменная, которая задает вид строки приглашения командной строки, которое bash выводит, когда ожидает ввода очередной команды пользователем.
  • PS2 - переменная, отвечающая за вторичный тип приглашения ввода.
  • PS3 - третичное приглашение, выводится тогда, когда пользователь должен сделать выбор в операторе select.
  • PS4 - приглашение четвертого уровня, выводится при отладки сценариев (скриптов) в начале каждой строки перед командой перед исполняющейся командой.
  • PROMPT_COMMAND - содержимое этой переменной выполняется перед каждой строкой приглашения.

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

echo $PS1

Вывод будет примерно следующим:

\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w$

Для изменения переменной можно пользоваться командой export. Например:

export PS1='\u@\w : '

Изменит приглашение на такое:

user@ :

Другим методом изменения данных переменных является задание из в конце файла /.bashrc. Это делается таким образом:

PS1 = "\u@\w : "

Задание параметров приглашения командной оболочки производится при помощи задания управляющих последовательностей:

  • \d - Дата в формате "День, месяц, число", например, Срд, Окт, 17.
  • \h - Имя хоста (hostname) до первой точки
  • \H - Полное имя хоста
  • \t - Текущее время в 24-часовом формате: HH:MM:SS (часы:минуты:секунды)
  • \T - Текущее время в 12-часовом формате: HH:MM:SS
  • \@ - Текущее время в 12-часовом формате am/pm
  • \u - Имя пользователя, запустившего оболочку
  • \w - Полное имя текущего рабочего каталога (начиная с корня)
  • \W - Текущий рабочий каталог (без указания пути)
  • $ - Символ #, если что такое приглашение командной строки это оболочка запущена суперпользователем, и символ $, если оболочка запущена обычным такое пользователем.
  • \n - Новая строка (перевод строки)
  • \s - Имя оболочки
  • \# - Текущий номер команды
  • \! - Порядковый номер данной команды в истории команд
  • \ - Обратный слэш (a backslash)
  • \nnn - Непечатный символ, имеющий восьмеричный код nnn (к примеру esc)
  • \a - Звуковой сигнал (ASCII-код 007)
  • \e - escape (ASCII-код 033)
  • \[ - Начало последовательности не печатаемых символов (этот символ может быть использован для того, чтобы включить в текст подсказки последовательность управляющих символов терминала)
  • \] - Конец последовательности не печатаемых символов

Изменение цвета строки приглашения:
Изменение цвета строки приглашения командной оболочки делается при помощи последовательности

\[\е[#;##m\]
  • # - номер свойства цвета
  • ## - номер цвета

Номера свойств текста:

Свойство Код Значение по умолчанию 0 Повышенная яркость 1 Пониженная яркость 2 Подчеркнутый 4 Нормальная яркость 5 Инвертированный 7 Скрытый 8

Номера цветов:

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

Например такая последовательность:

\[\e[1;37m\] \u: \[\e[0;37m\]

Настроит строку приглашения следующим образом:

Как видно из примера управляющая последовательность изменяет свойства всего текста после неё и до другой последовательности.
Таким же образом устанавливается цвет фона и текста, но параметры дублированы. Первые два для фона, вторые - для текста:

\[\е[#;##;#;##m\]

Переменная PS2:
Содержимое переменной PS2 появляется на экране терминала при переносе ввода команды на следующую строку. Например:

Метод изменения переменных одинаков, не будем останавливаться на каждой отдельно.
Переменная PS3: Этот вид приглашения используется в скриптах, когда нужно сделать выбор при использовании оператора select.
Переменная PROMPT_COMMAND: Эта переменная используется для помещения какого либо выражения перед каждой строкой приглашения терминала:
Например если поместить в неё команду ls:

export PROMPT_COMMAND='ls'

То перед каждой строкой приглашения выведется список файлов текущей папки:


Для более подробной информации вы можете воспользоваться справочным руководством: man bash
Источник: http://blablacode.ru/linux/21



Рекомендуем посмотреть ещё:


Закрыть ... [X]

Что такое приглашение командной строки это Если нам судьба сценарий

Что такое приглашение командной строки это Что такое приглашение командной строки это Что такое приглашение командной строки это Что такое приглашение командной строки это Что такое приглашение командной строки это Что такое приглашение командной строки это Что такое приглашение командной строки это