Поиск по сайту:

Как настроить приглашение Bash в Linux

BASH (Bourne-Again Shell) — это оболочка по умолчанию для большинства современных дистрибутивов Linux. В этом руководстве мы собираемся настроить приглашение BASH и улучшить его внешний вид, добавив несколько цветов и стилей.

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

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

В BASH мы можем настроить и изменить приглашение BASH по своему усмотрению, изменив значение переменной среды PS1.

Обычно приглашение BASH выглядит примерно так:

Приглашение BASH в Ubuntu

Здесь sk — это имя пользователя, а ubuntuserver — имя хоста.

Теперь мы собираемся изменить это приглашение по своему усмотрению, вставив несколько специальных символов с обратной косой чертой, называемых Escape-последовательности.

Позвольте мне показать вам несколько примеров.

Прежде чем двигаться дальше, настоятельно рекомендуется создать резервную копию файла ~/.bashrc.

cp ~/.bashrc ~/.bashrc.bak

Измените часть «имя_пользователя@имя_хоста» в командной строке Bash.

Как я упоминал выше, в большинстве дистрибутивов Linux приглашение BASH по умолчанию содержит часть «имя_пользователя@имя_хоста». Вы можете изменить эту часть на что-то другое.

Для этого отредактируйте файл ~/.bashrc  :

vi ~/.bashrc

Добавьте в конце следующую строку:

PS1="ostechnix> "

Замените «ostechnix» любыми буквами/словами по вашему выбору. После добавления нажмите клавишу ESC и введите :wq, чтобы сохранить файл и выйти из него.

Выполните следующую команду, чтобы обновить изменения:

source ~/.bashrc

Теперь в командной строке BASH будут буквы «ostechnix».

Измените часть «имя_пользователя@имя_хоста» в командной строке Bash.

Вот еще один пример. Я собираюсь заменить часть «имя_пользователя@имя_хоста» на «Hello@welcome>».

Для этого добавьте следующую запись в файл ~./bashrc.

export PS1="Hello@welcome> "

Не забудьте обновить изменения с помощью команды «source ~./bashrc».

Вот результат моего приглашения BASH в Ubuntu 18.04 LTS.

Изменить приглашение BASH

Отображать только имя пользователя

Чтобы отобразить только имя пользователя, просто добавьте следующую строку в файл ~/.bashrc.

export PS1="\u "

Здесь \u — escape-последовательность.

Вот еще несколько значений, которые можно добавить в переменную PS1, чтобы изменить приглашение BASH. После добавления каждой записи вы должны запустить команду «source ~/.bashrc», чтобы изменения вступили в силу.

Добавить имя пользователя с именем хоста

export PS1="\u\h "

Ваше приглашение теперь будет выглядеть так:

skubuntuserver 

Добавьте имя пользователя и полное доменное имя (полное доменное имя)

export PS1="\u\H "

Добавьте дополнительные символы между именем пользователя и именем хоста.

Если вы хотите использовать любую букву, например @, между именем пользователя и именем хоста, используйте следующую запись:

export PS1="\u@\h "

Приглашение bash будет выглядеть следующим образом:

sk@ubuntuserver

Добавьте имя пользователя с именем хоста с символом $в конце.

export PS1="\u@\h\\$ "

Добавьте специальные символы между и после имени пользователя и имени хоста.

export PS1="\u@\h> "

Эта запись изменит приглашение BASH, как показано ниже.

sk@ubuntuserver>

Аналогичным образом вы можете добавить другие специальные символы, такие как двоеточие, точка с запятой, *, подчеркивание, пробел и т. д.

Отображение имени пользователя, имени хоста, имени оболочки

export PS1="\u@\h>\s "

Отображение имени пользователя, имени хоста, оболочки и версии Bash.

export PS1="\u@\h>\s\v "

Вывод Bash:

Отображать имя пользователя, имя хоста, оболочку и версию Bash в командной строке Bash.

Отображение имени пользователя, имени хоста и пути к текущему каталогу:

export PS1="\u@\h\w "

Вы увидите символ тильды (~), если текущий каталог — $HOME.

Отображение даты в командной строке BASH

Чтобы отображать дату с вашим именем пользователя и именем хоста в командной строке BASH, добавьте следующую запись в файл ~/.bashrc.

export PS1="\u@\h>\d "

Отображение даты в командной строке BASH

Дата и время в 12-часовом формате в командной строке BASH.

export PS1="\u@\h>\d\@ "

Дата и время в 12-часовом формате чч:мм:сс.

export PS1="\u@\h>\d\T "

Дата и 24-часовое время

export PS1="\u@\h>\d\A "

Дата и 24-часовой формат чч:мм:сс.

export PS1="\u@\h>\d\t "

Это некоторые распространенные escape-последовательности для изменения формата приглашения Bash. Доступно еще несколько escape-последовательностей. Вы можете просмотреть их все на странице руководства bash в разделе ПРОМПТИНГ.

И вы можете просмотреть текущие настройки подсказки в любое время с помощью команды:

echo $PS1

Скрыть часть «имя_пользователя@имя_хоста» в командной строке Bash

Я не хочу ничего менять. Могу ли я вообще это скрыть? Да, ты можешь!

Если вы блоггер или технический писатель, есть вероятность, что вам придется загружать снимки экрана вашего терминала Linux на свои веб-сайты и в блоги. Ваше имя пользователя/имя хоста могут быть слишком крутыми, поэтому вы не захотите, чтобы другие копировали и использовали их как свои собственные. С другой стороны, ваше имя пользователя/имя хоста может быть слишком странным или слишком плохим или содержать оскорбительные символы, поэтому вы не хотите, чтобы другие их видели. В таких случаях этот небольшой совет может помочь вам скрыть или изменить часть «имя пользователя@имя хоста» в Терминале.

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

Отредактируйте файл "~/.bashrc":

vi ~/.bashrc

Добавьте в конце следующее:

PS1="\W> "

Введите :wq, чтобы сохранить и закрыть файл.

Затем выполните следующую команду, чтобы изменения вступили в силу.

source ~/.bashrc

Вот и все. Теперь проверьте свой терминал. Вы не увидите часть username@localhost. Вы увидите только символ ~>.

Скрыть часть «username@hostname» в командной строке Bash

Внимание! В некоторых случаях это плохая практика. Например, если другая оболочка, например zsh, унаследует вашу текущую оболочку, это вызовет некоторые проблемы. Используйте его только для сокрытия или изменения части username@localhost, если вы используете одну оболочку. Помимо сокрытия части username@localhost в Терминале, этот совет совершенно бесполезен и может быть проблематичным.

Хотите узнать еще один простой способ не испортить файл ~/.bashrc? Просто создайте еще одну учетную запись пользователя, например user@example или admin@demo. Используйте эти аккаунты для создания руководств и видеороликов и загружайте их в свой блог или в Интернет. Теперь вам нечего беспокоиться о своей личности.

Раскрасить приглашение BASH

На данный момент мы только что изменили/добавили некоторые элементы в приглашение BASH. В этом разделе мы собираемся добавить цвета элементам.

Вы можете улучшить цвет переднего плана (текста) и фона элементов приглашения BASH, добавив код в файл ~/.bashrc.

Например, чтобы изменить цвет переднего плана всего текста на красный, добавьте следующий код:

export PS1="\u@\[\e[31m\]\h\[\e[m\] "

После добавления обновите изменения с помощью команды:

Теперь приглашение BASH будет выглядеть следующим образом:

Раскрасить приглашение BASH

Аналогично, чтобы изменить цвет фона, добавьте этот код:

export PS1="\u@\[\e[31;46m\]\h\[\e[m\] "

изменить цвет фона приглашения bash

Добавление смайлов

Кто не любит смайлы? Мы можем добавить смайлик, поместив следующий код в файл ~/.bashrc.

PS1="\W ? >"

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

Мне немного сложно настроить приглашение BASH. Есть ли другой простой способ?

Если вы новичок, написание и добавление значений PS1 будет запутанным и трудным. Кроме того, вам будет немного сложно расположить элементы так, чтобы получить желаемый результат. Не беспокойся! Доступен онлайн-генератор Bash PS1, который позволяет вам легко генерировать различные значения PS1 по вашему желанию.

Перейдите на следующий веб-сайт:

Просто выберите элементы, которые вы хотите использовать в командной строке BASH. Добавьте цвета к элементам и расположите их в любом порядке по своему вкусу. Мгновенно просмотрите результат и, наконец, скопируйте/вставьте полученный код в свой файл ~/.bashrc. Это так просто! Большинство примеров, упомянутых в этом руководстве, взяты с этого сайта. Как уже говорилось, не забудьте сделать резервную копию текущего файла ~/.bashrc перед внесением каких-либо изменений.

Рекомендуем прочитать:

  • Как изменить приглашение Sudo в Linux

Я испортил свой файл .bashrc? Как вернуть настройки по умолчанию?

Как я упоминал ранее, настоятельно рекомендуется сделать резервную копию ~./bashrc (или любых важных файлов конфигурации в целом) перед внесением каких-либо изменений. Таким образом, вы сможете восстановить его до предыдущей рабочей версии, если что-то пошло не так. Однако, если вы вообще забыли сделать резервную копию файла ~/.bashrc, вы все равно можете восстановить его настройки по умолчанию, как описано в следующем руководстве.

  • Как восстановить настройки файла .bashrc по умолчанию

Приведенное выше руководство основано на Ubuntu, но может быть применимо и к другим дистрибутивам Linux. Пожалуйста, дайте нам понять, что вышеупомянутое руководство поможет вам сбросить ~/.bashrc до настроек по умолчанию во время новой установки. Любые изменения, сделанные после этого, будут потеряны.

Ресурс:

  • Справочное руководство по Bash

Статьи по данной тематике