Преди да започнем да променяме bash промптa е добре да запазим старата му стойност, за всеки случай. Стойността на промптa се пази от променливата на обкръжението PS1. За да запазим тази стойност е добре да я присвоим на друга променлива. Това става по следният начин:
[slaff@atlantis slaff]$ SAVE=$PS1
Сега старата стойност на PS1 променливата се пази от променливата SAVE. PS1 променливата определя как да изглежда нашият промпт. Нека да направим първата промяна и да присвоим на PS1 променливата стойност "command>":
[slaff@atlantis slaff]$ PS1="command>"
В резултат на тази опреция ще имаме следния промпт:
command>
Сега нека се опитаме да възстановим стария промпт
command> PS1=$SAVE
[slaff@atlantis slaff]$
Bash позволява използването и на специални символи, който да стоят в нашият промпт. Ето и някой от тези специални символи:
\a предизвиква пиукане на спикера
\d показва дата във формат "Ден от седмицата" "Месец" Ден от месеца" (примерно "Tue May 26")
\h името на хоста до първата точка (пр. хост subdomain.domain.org -> името на хоста до първата точка = subdomain)
\H цялото име на хоста
\n нов ред
\r нов ред
\s името на шелът, който използваме
\t времето за 24 часа в следния формат HH:MM:SS (HH-час, MM-минути, SS-секунди)
\T време за 12 часа в следния формат HH:MM:SS
\u потребителското име (username)
\v версия на bash шела(примерно 2.00)
\w пълният път до текущата директория
\W само името на текущата директория
\! коя подред е тази команда
\nnn oсмично число
\\ обратно наклонена черта (т.е. \)
\[ начало на последователност от "контролни символи"
\] край на последователност от "контролни символи"
Промптът, който използвахме до момента е съставен от следните специални символи:
\u (потребителско име) т.е slaff
\h името на хоста до първата точка т.е atlantis
\W името на текущата директория т.е slaff
[slaff@atlantis slaff]$ PS1="\u@\h \W> "
slaff@atlantis slaff> ls
bin mail
slaff@atlantis slaff>
Този промпт е най-често използван в повечето Linux дистибуции.
Нека сега да променим промпта така, че да показва и часът:
slaff@atlantis slaff> PS1="[\t][\u@\h:\w]\$ "
[21:52:01][slaff@atlantis:~]$ ls
bin mail
Ако не искаме всеки път да променяме промта, а той да се променя още с влизането ни, трябва да променим файлът .bash_profile, който се намира във нашата главна директория. Ако такъв файл не съществува трябва да го създадем. Ако имате root права и искате да промените на всички потребители промпта редактирайте файлът /etc/profile или /etc/bashrc . Имайте предвид, че този файл може да се намира на друго място за различните Linux дистрибуции. Самото редактране се състои в добавянето на този ред
PS1="[\t][\u@\h:\w]\$ "
Няма коментари:
Публикуване на коментар