<Попередній | зміст | Наступна>
Анатомія підказки
Наше підказка за замовчуванням виглядає приблизно так:
[me@linuxbox ~]$
[me@linuxbox ~]$
Зверніть увагу, що він містить наше ім’я користувача, наше ім’я хоста та наш поточний робочий каталог, але як це сталося? Дуже просто, виявляється. Підказка визначається змінною середовища з іменем PS1 (скорочене від «промтовий рядок один»). Ми можемо переглянути вміст PS1 з нудьгувати команда:
[me@linuxbox ~]$ echo $PS1
[\u@\h \W]\$
[me@linuxbox ~]$ echo $PS1
[\u@\h \W]\$
Примітка. Не хвилюйтеся, якщо ваші результати не збігаються з наведеним вище прикладом. Кожен дистрибутив Linux визначає рядок підказки дещо по-різному, деякі досить екзотичні.
За результатами ми це бачимо PS1 містить кілька символів, які ми бачимо в нашій підказці, як-от дужки, знак at і знак долара, але решта є загадкою. Розумні серед нас впізнають їх спеціальні символи, що екранують зворотну косу риску як
Анатомія підказки
ті, які ми бачили в розділі 7. Ось неповний список персонажів, які бити розглядається спеціально в рядку підказки:
Таблиця 13-1: Escape-коди, що використовуються в підказках оболонки
Відображається значення послідовності
Відображається значення послідовності
\a Дзвінок ASCII. Це дає комп’ютер звуковим сигналом, коли він зустрічається.
\d Поточна дата у форматі дня, місяця, дати. Наприклад, «Пн, 26 травня».
\h Ім'я хоста локальної машини мінус ім'я домену в кінці.
\H Повне ім'я хоста.
\j Кількість завдань, що виконуються в поточному сеансі оболонки.
\l Назва поточного термінального пристрою.
\n Символ нового рядка.
\r Повернення каретки.
\s Назва програми оболонки.
\t Поточний час у форматі 24 години: години: хвилини: секунди.
\T Поточний час у 12-годинному форматі.
\@ Поточний час у форматі 12 годин AM/PM.
\A Поточний час у форматі 24 години: хвилини.
\u ім'я користувача поточного користувача.
\v Номер версії оболонки.
\V Номери версії та випуску оболонки.
\w Ім'я поточного робочого каталогу.
\W Остання частина назви поточного робочого каталогу.
\! Номер історії поточної команди.
\# Кількість команд, введених під час цього сеансу оболонки.
\$ Це відображає символ «$», якщо ми не маємо привілеїв суперкористувача.
У цьому випадку замість цього відображається «#».
\[ Сигналізує початок серії з одного або кількох недрукованих символів.
Це використовується для вбудовування недрукованих контрольних символів, які якимось чином маніпулюють емулятором терміналу, наприклад переміщують
курсор або зміна кольору тексту.
\] Сигналізує про закінчення недрукованої послідовності символів.