username@hostname:directory$
Но можете да конфигурирате баш прозореца да съдържа всичко, което ви харесва, и дори да изберете какви цветове искате.
Примерните стъпки тук бяха извършени на Ubuntu 16.04 LTS. Процесът трябва да е еднакъв за другите дистрибуции на Linux, въпреки че подразбиращият се Bash промпт и настройките във файла.bashrc може да са малко по-различни.
Където се съхранява променливата променлива
Вашата конфигурация на промпта за Bash се съхранява във файла.bashrc на вашия потребителски акаунт, който е в
~/.bashrc
Така че, ако вашето потребителско име е bob, файлът е в
/home/bob/.bashrc
Можете да отворите файла, за да видите текущата променлива Bash. Ще използваме нано като пример за текстов редактор, въпреки че бихте могли да използвате и vi, emacs или друг текстов редактор, с който се чувствате добре. Отворете терминал и изпълнете:
nano ~/.bashrc
PS1=
секция. Първата променлива изглежда доста сложна, защото съдържа цветна информация - ще я обясним по-късно. Втората променлива, без цветна информация, гласи следното:
${debian_chroot:+($debian_chroot)}u@h:w$
${debian_chroot:+($debian_chroot)}
бита. Те просто казват на Баш да ви уведоми, ако използвате среда на Debian chroot и обикновено няма да се показва. Пренебрегвайки тези, тук е структурата по подразбиране на променливата Bash prompt:
u@h:w$
u
показва потребителското ви име,
@
показва знака @,
h
показва името на хоста (името на компютъра),
:
показва знака:
w
показва работната директория и
$
показва $, ако сте обикновен потребителски профил или # ако сте корен. Така че, слагайки всичко това заедно, ще получите
username@hostname:working_directory$
За да промените Вашия Bash подкана, просто трябва да добавите, премахнете или пренаредите специалните символи в променливата PS1. Но има много повече променливи, които можете да използвате, отколкото тези по подразбиране.
Оставете текстовия редактор за сега в нано, натиснете Ctrl + X, за да излезете. Ще ви покажем как да експериментирате с променливи, преди да внесете нова в своя.bashrc файл.
Как да създадете персонализиран баш
Вашата конфигурация на промпта за Bash се съхранява в променливата PS1. За да запазите съдържанието на променливата PS1 в нова променлива, изпълнете следната команда:
DEFAULT=$PS1
Вече можете да настроите променливата PS1 на различни стойности, за да експериментирате. Например, първият ред тук ще зададе подканата ви до основния прозорец "user $", а втория ще зададе подканата ви до основния прозорец "user: working_directory $".
PS1='u$ ' PS1='u:w$ '
Ако някога искате да се върнете към подкана по подразбиране, просто изпълнете следната команда.
PS1=$DEFAULT
Баш ще бъде възстановен до подразбиращия се промпт, благодарение на факта, че сте записали по-рано тези настройки по подразбиране. Обърнете внимание, че промените, които направите тук, са само временни за текущата сесия на Bash, така че винаги можете да излезете и да влезете или да затворите и да отворите отново прозореца на терминала, за да се върнете към подканата по подразбиране. Но горепосочената линия позволява лесно да се върнете към подразбиращия се Bash подкана, без да се налага да се отказвате или да затваряте прозорец.
PS1='Hello World u@h:w$ '
-
Камбанен характер:
a
-
Датата, във формат "Дата на седмицата на месеца" (напр. "Tue May 26"):
d
-
Форматът се предава на strftime (3) и резултатът се вмъква в подразделението; празният формат води до специфично за локалното представяне на времето. Задължителните скоби са задължителни:
D{format}
-
Евангелски характер:
e
-
Името на хоста, до първото ".":
h
-
Името на хоста:
H
-
Броят на заданията, които понастоящем се управляват от обвивката:
j
-
Основното име на името на терминалното устройство на корпуса:
l
- Нова линия:
- Доплащане за превоз:
-
Името на корпуса, базовото име на $ 0 (частта след последната наклонена черта):
s
-
Времето в 24 часа HH: MM: SS формат:
-
Времето в 12 часа HH: MM: SS формат:
T
-
Времето, в 12-часов формат:
@
-
Времето, в 24-часов формат HH: MM:
A
-
Потребителското име на текущия потребител:
u
-
Версията на Bash (напр. 2,00):
v
-
Освобождаването на Bash, версия + пластир (напр. 2.00.0):
V
-
Текущата работна директория, с $ HOME съкратена с tilda (използва променливата $ PROMPT_DIRTRIM):
w
-
Базовото име на $ PWD, с $ HOME съкратено с tild:
W
-
Номерът на историята на тази команда:
!
-
Команден номер на тази команда:
#
-
Ако ефективният uid е 0, #, в противен случай $:
$
-
Знакът, чийто ASCII код е осмичната стойност nnn:
nn
-
Обратно наклонена черта:
-
Започнете последователност от непечатни знаци. Това може да се използва за вграждане на последователността на контролния терминал в подкана:
[
-
Завършете последователност от непечатни знаци:
]
Така че, ако искате да добавите датата и часа към Вашия Bash промпт и да поставите работната директория на команда на втора линия, можете да използвате следната конструкция:
PS1='[d ] u@h
w$ '
Квадратните скоби тук изобщо не са необходими, но ви помагат да разкъсате нещата визуално и да направите линията по-лесна за четене. Както вече споменахме, можете да добавите текст или нормални знаци към променливата, която харесвате, така че се чувствайте свободни да използвате каквото и да работи за вас.
`
знаци. Това не е апостроф - това е сериозният акцент, който се появява над клавиша Tab на вашата клавиатура.
Например, да речем, че искате да видите версията на ядрото на Linux в подканата. Можете да използвате линия като следното:
PS1='u@h on `uname -s -r` w$ '
uptime
команда. Можете да използвате следната конструкция, която поставя ъптайм на собствената си линия преди останалата част от подканата.
PS1='(`uptime`)
u@h:w$ '
Как да добавите цветове към вашия баш
След като разберете предпочитания от вас подкана, можете да добавите цветове към него. Това всъщност е много проста, но прави променливата изглежда ужасно объркана и сложна, ако не разбирате какво гледате.
Например променливата по подразбиране за променливата на цвета от предишната е:
${debian_chroot:+($debian_chroot)}[