PS1: Difference between revisions
No edit summary |
No edit summary |
||
(27 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
'''V1. | '''V1.21''' | ||
== Tutvustuseks == | |||
Enamik neist, kes kordki linuxi operatsioonisüsteemiga kokku puutunud on näinud või kasutanud prompt'i. Prompt on lihtsalt öelduna kohaks, mille taha annab kasutaja käske. Prompt'il võib olla mitmeid eri kujusid, üks lihtsamaid prompt'e: | |||
[[File:prompt1.png]] | |||
Vaikimisi kuvavad enamik Linux'i peresse kuuluvaid operatsioonisüsteeme masina domeeninime ehk masinat identifitseerivat nime ja jooksvat töökataloogi. Prompt'i kuju määrab keskkonnamuutuja PS1. Prompt'i saab lihtsate vahenditega panna kuvama erinevat informatsiooni nagu kellaaega ning lisada värve. Järgnev juhend on mõeldud igaühele, kes soovib oma elu veidi lihtsamaks teha või miks mitte ka veidi edev olla ning muuta oma vaikimisi prompt vastavalt oma kasutamisharjumustele ning -eelistustele. | Vaikimisi kuvavad enamik Linux'i peresse kuuluvaid operatsioonisüsteeme masina domeeninime ehk masinat identifitseerivat nime ja jooksvat töökataloogi. Prompt'i kuju määrab keskkonnamuutuja PS1. Prompt'i saab lihtsate vahenditega panna kuvama erinevat informatsiooni nagu kellaaega ning lisada värve. Järgnev juhend on mõeldud igaühele, kes soovib oma elu veidi lihtsamaks teha või miks mitte ka veidi edev olla ning muuta oma vaikimisi prompt vastavalt oma kasutamisharjumustele ning -eelistustele. | ||
== Sõnaselgitusi == | == Sõnaselgitusi == | ||
Line 23: | Line 15: | ||
prompt- koht, mille taha sisestab kasutaja oma käske | prompt- koht, mille taha sisestab kasutaja oma käske | ||
masina domeeninimi- masinat identifitseeriv tähtede ja/või numbrite kombinatsioon | masina domeeninimi- masinat identifitseeriv tähtede ja/või numbrite kombinatsioon | ||
shell- tõlkes koorik, käsurea liides | shell- tõlkes koorik, käsurea liides | ||
bash- üks shell'e | bash- üks shell'e | ||
PS1- keskkonnamuutuja, mis määrab prompt'i kuju | PS1- keskkonnamuutuja, mis määrab prompt'i kuju | ||
== Kasutamine == | == Kasutamine == | ||
Line 33: | Line 30: | ||
<pre>$ echo $PS1</pre> | <pre>$ echo $PS1</pre> | ||
Vaikimisi on väljundiks: | |||
'''\u@\h:\w\$''' | |||
kus \u märgib kasutajanime, \h märgib domeeninime, \w märgib jooksvat töökataloogi. | kus \u märgib kasutajanime, \h märgib domeeninime, \w märgib jooksvat töökataloogi. | ||
Bash lubab prompt'i muuta sisestades kaldkriipsuga sümboleid, mis lahti selgitatuna märgivad järgnevat: | Bash lubab prompt'i muuta sisestades kaldkriipsuga sümboleid, mis lahti selgitatuna märgivad järgnevat: | ||
\d : kuupäeva kuvamine formaadis nädalapäev-kuu-kuupäev | ''\a : prompt annab helisignaali'' | ||
\D{formaat} : formaat edastatakse käsule strftime ja tulemus sisestatakse prompt'i, formaadi tühjaks jätmine märgib, et tulemus kuvatakse lokaalses aja esituses | |||
\e : ASCII kooditabeli katkestussümboli sisestamine | ''\d : kuupäeva kuvamine formaadis nädalapäev-kuu-kuupäev'' | ||
\h : domeeninime kuvamine esimese '.'-ni | |||
\H : domeeninime kuvamine | ''\D{formaat} : formaat edastatakse käsule strftime ja tulemus sisestatakse prompt'i, formaadi tühjaks jätmine märgib, et tulemus kuvatakse lokaalses aja esituses'' | ||
\j : shellis hetkel jooksvate tööde nimekirja kuvamine | |||
\l : shell'i terminalseadme nime kuvamine | ''\e : ASCII kooditabeli katkestussümboli sisestamine'' | ||
\n : uue rea sisestamine | |||
\r : kursori rea algusesse viimine | ''\h : domeeninime kuvamine esimese '.'-ni'' | ||
\s : shell'i nime kuvamine | |||
\t : hetkeaja 24-tunni tund-minut-sekund formaadis kuvamine | ''\H : domeeninime kuvamine'' | ||
\T : hetkeaja 12-tunni tund-minut-sekund formaadis kuvamine | |||
\@ : hetkeaja 12-tunni AM/PM formaadis kuvamine | ''\j : shellis hetkel jooksvate tööde nimekirja kuvamine'' | ||
\A : hetkeaja 24-tunni tund-minut formaadis kuvamine | |||
\u : kasutajanimi kuvamine | ''\l : shell'i terminalseadme nime kuvamine'' | ||
\v : bash'i versiooni kuvamine | |||
\V : bash'i versiooni täpsem kuvamine | ''\n : uue rea sisestamine'' | ||
\w : jooksva töökataloogi kuvamine | |||
\W : jooksva töökataloogi kuvamine | ''\r : kursori rea algusesse viimine'' | ||
\! : antud käsku ajaloos märkiva jäjekorranumbri kuvamine | |||
\# : antud käsu käsunumbri kuvamine | ''\s : shell'i nime kuvamine'' | ||
\$ : juhul kui UID (User IDentification) on 0 kuvatakse #, muul juhul $ | |||
\nnn : kuvab sümboli, mis vastab kaheksandik numbrile nnn | ''\t : hetkeaja 24-tunni tund-minut-sekund formaadis kuvamine'' | ||
\\ : kaldkriipsu kuvamine | |||
\[ : alustab mitte-kuvatavate sümbolite vahemikku | ''\T : hetkeaja 12-tunni tund-minut-sekund formaadis kuvamine'' | ||
\[ : lõpetab mitte-kuvatavate sümbolite vahemiku | |||
''\@ : hetkeaja 12-tunni AM/PM formaadis kuvamine'' | |||
''\A : hetkeaja 24-tunni tund-minut formaadis kuvamine'' | |||
''\u : kasutajanimi kuvamine'' | |||
''\v : bash'i versiooni kuvamine'' | |||
''\V : bash'i versiooni täpsem kuvamine'' | |||
''\w : jooksva töökataloogi kuvamine'' | |||
''\W : jooksva töökataloogi kuvamine'' | |||
''\! : antud käsku ajaloos märkiva jäjekorranumbri kuvamine'' | |||
''\# : antud käsu käsunumbri kuvamine'' | |||
''\$ : juhul kui UID (User IDentification) on 0 kuvatakse #, muul juhul $'' | |||
''\nnn : kuvab sümboli, mis vastab kaheksandik numbrile nnn'' | |||
''\\ : kaldkriipsu kuvamine'' | |||
''\[ : alustab mitte-kuvatavate sümbolite vahemikku'' | |||
''\[ : lõpetab mitte-kuvatavate sümbolite vahemiku'' | |||
Näiteks muudame prompt'i nii, et see kuvab kuupäeva ja kellaja, hostinime ning jooksva kataloogi: | Näiteks muudame prompt'i nii, et see kuvab kuupäeva ja kellaja, hostinime ning jooksva kataloogi: | ||
Line 70: | Line 98: | ||
Nüüd näeb prompt välja järgnev: | Nüüd näeb prompt välja järgnev: | ||
'''[Sun May 01 14:42:50 student@server2:~ ] $''' | |||
== Värvide lisamine == | == Värvide lisamine == | ||
Line 77: | Line 107: | ||
<pre>'\e[x;ym $PS1 \e[m'</pre> | <pre>'\e[x;ym $PS1 \e[m'</pre> | ||
kus \e[ alustab värvi muutmise käsuga, x;y märgivad kasutatavat värvipaari, $PS1 on kasutatava shell'i prompt ja \e[m lõpetab värvi muutmise käsu. | kus \e[ alustab värvi muutmise käsuga, x;y märgivad kasutatavat värvipaari, $PS1 on kasutatava shell'i prompt ja \e[m lõpetab värvi muutmise käsu. | ||
Prompt'i värvi punaseks muutmiseks tuleb sisestada järgnev käsk: | Prompt'i värvi punaseks muutmiseks tuleb sisestada järgnev käsk: | ||
Line 82: | Line 113: | ||
Tulemuseks on: | Tulemuseks on: | ||
[[File:punaneprompt.png]] | [[File:punaneprompt.png]] | ||
Värvide tabel | Värvide tabel | ||
''0;30 : must'' | |||
0;34 : sinine | |||
0;32 : roheline | ''0;34 : sinine'' | ||
0;36 : helesinine | |||
0;31 : punane | ''0;32 : roheline'' | ||
0;35 : lilla | |||
0;33 : pruun | ''0;36 : helesinine'' | ||
''0;31 : punane'' | |||
''0;35 : lilla'' | |||
''0;33 : pruun'' | |||
0 asendamisel 1-ga saadakse antud värvi heledam varjant | 0 asendamisel 1-ga saadakse antud värvi heledam varjant | ||
== Tput käsklus == | == Tput käsklus == | ||
Line 101: | Line 142: | ||
Järgnev muudab prompt'i punaseks: | Järgnev muudab prompt'i punaseks: | ||
<pre>export PS1="\[$(tput setaf 1)\]\]\u@\h:\w $ \[$(tput sgr0)\]"</pre> | <pre>export PS1="\[$(tput setaf 1)\]\]\u@\h:\w $ \[$(tput sgr0)\]"</pre> | ||
Tput'i käske: | Tput'i käske: | ||
tput rev : kuvab värvid ümberpööratult, taustavärv ja märkide värv on vahetuses | ''tput bold : paksus kirjas kuvamine'' | ||
tput sgr0 : taastab algseisud | |||
tput setaf {CODE} : märkide värvi seadmine | ''tput rev : kuvab värvid ümberpööratult, taustavärv ja märkide värv on vahetuses'' | ||
tput setab {CODE} : taustavärvi seadmine | |||
''tput sgr0 : taastab algseisud'' | |||
''tput setaf {CODE} : märkide värvi seadmine'' | |||
''tput setab {CODE} : taustavärvi seadmine'' | |||
Tput'i värvide tabel: | Tput'i värvide tabel: | ||
1 : punane | ''0 : must'' | ||
2 : roheline | |||
3 : kollane | ''1 : punane'' | ||
4 : sinine | |||
5 : violetne | ''2 : roheline'' | ||
6 : helesinine | |||
7 : valge | ''3 : kollane'' | ||
''4 : sinine'' | |||
''5 : violetne'' | |||
''6 : helesinine'' | |||
''7 : valge'' | |||
== Muudatuste salvestamine == | == Muudatuste salvestamine == | ||
Line 129: | Line 186: | ||
<pre>export PS1='\[\e[1;32m\][\u@\h \W]\$\[\e[0m\] '</pre> | <pre>export PS1='\[\e[1;32m\][\u@\h \W]\$\[\e[0m\] '</pre> | ||
Prompt on nüüd uuel sisselogimisel rohelist värvi. | Prompt on nüüd uuel sisselogimisel rohelist värvi. | ||
Võimalik on ka keerukamate konstruktsioonide lisamine: | Võimalik on ka keerukamate konstruktsioonide lisamine: | ||
Line 140: | Line 198: | ||
Kasutaja prompt muutub juurkasutaja õigustesse logimisel punaseks. | Kasutaja prompt muutub juurkasutaja õigustesse logimisel punaseks. | ||
Artiklis sai tutvutud erinevate keskkonnamuutuja PS1 modifitseerimise võimalustega, millega | == Kokkuvõtteks == | ||
Kindlasti | |||
Artiklis sai tutvutud erinevate keskkonnamuutuja PS1 modifitseerimise võimalustega, millega saab muuta prompt'is kuvatavat informatsiooni ning ka prompt'i enda värvi. | |||
Kindlasti pole see artikkel Linuxi kasutamise seisukohalt hädavajalik, sest sisestatavad käsud ei olene prompt'i kujust või värvist. Samas on prompt'i modifitseerimisega võimalik parandada kasutajamugavust ning muuta oma ekraanipilti isikupärasemaks. | |||
== Lisaks lugemist == | == Lisaks lugemist == | ||
[http://bashish.sourceforge.net/ Bashish võimaldab teemade lisamist tekstiterminalidele] | [http://bashish.sourceforge.net/ Bashish võimaldab teemade lisamist tekstiterminalidele] | ||
[http://www.afterstep.org/aterm.php Aterm võimaldab visuaalsete effektide lisamist] | [http://www.afterstep.org/aterm.php Aterm võimaldab visuaalsete effektide lisamist] | ||
== Kasutatud kirjandus == | == Kasutatud kirjandus == | ||
[http://www.cyberciti.biz/tips/howto-linux-unix-bash-shell-setup-prompt.html How to: Change / Setup bash custom prompt (PS1)] | [http://www.cyberciti.biz/tips/howto-linux-unix-bash-shell-setup-prompt.html How to: Change / Setup bash custom prompt (PS1)] | ||
[http://www.cyberciti.biz/faq/bash-shell-change-the-color-of-my-shell-prompt-under-linux-or-unix/ BASH Shell change the color of my shell prompt under Linux or UNIX] | [http://www.cyberciti.biz/faq/bash-shell-change-the-color-of-my-shell-prompt-under-linux-or-unix/ BASH Shell change the color of my shell prompt under Linux or UNIX] | ||
[http://bash.cyberciti.biz/guide/Changing_bash_prompt Changing bash prompt] | [http://bash.cyberciti.biz/guide/Changing_bash_prompt Changing bash prompt] | ||
[http://kuutorvaja.eenet.ee/wiki/Bashi_kasutamine Bashi kasutamine] | [http://kuutorvaja.eenet.ee/wiki/Bashi_kasutamine Bashi kasutamine] | ||
'''Koostas Juhan Liiva A21''' | '''Koostas Juhan Liiva A21''' | ||
[[Category:Operatsioonisüsteemide administreerimine ja sidumine]] | [[Category:Operatsioonisüsteemide administreerimine ja sidumine]] |
Latest revision as of 18:44, 15 May 2011
V1.21
Tutvustuseks
Enamik neist, kes kordki linuxi operatsioonisüsteemiga kokku puutunud on näinud või kasutanud prompt'i. Prompt on lihtsalt öelduna kohaks, mille taha annab kasutaja käske. Prompt'il võib olla mitmeid eri kujusid, üks lihtsamaid prompt'e:
Vaikimisi kuvavad enamik Linux'i peresse kuuluvaid operatsioonisüsteeme masina domeeninime ehk masinat identifitseerivat nime ja jooksvat töökataloogi. Prompt'i kuju määrab keskkonnamuutuja PS1. Prompt'i saab lihtsate vahenditega panna kuvama erinevat informatsiooni nagu kellaaega ning lisada värve. Järgnev juhend on mõeldud igaühele, kes soovib oma elu veidi lihtsamaks teha või miks mitte ka veidi edev olla ning muuta oma vaikimisi prompt vastavalt oma kasutamisharjumustele ning -eelistustele.
Sõnaselgitusi
Mõned sõnaselgitused erinevate tekstis sisalduvate mõistete kohta:
prompt- koht, mille taha sisestab kasutaja oma käske
masina domeeninimi- masinat identifitseeriv tähtede ja/või numbrite kombinatsioon
shell- tõlkes koorik, käsurea liides
bash- üks shell'e
PS1- keskkonnamuutuja, mis määrab prompt'i kuju
Kasutamine
Jooksvate prompt'i seadete kuvamine:
$ echo $PS1
Vaikimisi on väljundiks:
\u@\h:\w\$
kus \u märgib kasutajanime, \h märgib domeeninime, \w märgib jooksvat töökataloogi.
Bash lubab prompt'i muuta sisestades kaldkriipsuga sümboleid, mis lahti selgitatuna märgivad järgnevat:
\a : prompt annab helisignaali
\d : kuupäeva kuvamine formaadis nädalapäev-kuu-kuupäev
\D{formaat} : formaat edastatakse käsule strftime ja tulemus sisestatakse prompt'i, formaadi tühjaks jätmine märgib, et tulemus kuvatakse lokaalses aja esituses
\e : ASCII kooditabeli katkestussümboli sisestamine
\h : domeeninime kuvamine esimese '.'-ni
\H : domeeninime kuvamine
\j : shellis hetkel jooksvate tööde nimekirja kuvamine
\l : shell'i terminalseadme nime kuvamine
\n : uue rea sisestamine
\r : kursori rea algusesse viimine
\s : shell'i nime kuvamine
\t : hetkeaja 24-tunni tund-minut-sekund formaadis kuvamine
\T : hetkeaja 12-tunni tund-minut-sekund formaadis kuvamine
\@ : hetkeaja 12-tunni AM/PM formaadis kuvamine
\A : hetkeaja 24-tunni tund-minut formaadis kuvamine
\u : kasutajanimi kuvamine
\v : bash'i versiooni kuvamine
\V : bash'i versiooni täpsem kuvamine
\w : jooksva töökataloogi kuvamine
\W : jooksva töökataloogi kuvamine
\! : antud käsku ajaloos märkiva jäjekorranumbri kuvamine
\# : antud käsu käsunumbri kuvamine
\$ : juhul kui UID (User IDentification) on 0 kuvatakse #, muul juhul $
\nnn : kuvab sümboli, mis vastab kaheksandik numbrile nnn
\\ : kaldkriipsu kuvamine
\[ : alustab mitte-kuvatavate sümbolite vahemikku
\[ : lõpetab mitte-kuvatavate sümbolite vahemiku
Näiteks muudame prompt'i nii, et see kuvab kuupäeva ja kellaja, hostinime ning jooksva kataloogi:
PS1="[\d \t \u@\h:\w ] $ "
Nüüd näeb prompt välja järgnev:
[Sun May 01 14:42:50 student@server2:~ ] $
Värvide lisamine
Värvi lisamine prompt'ile toimub järgneva käsuga:
'\e[x;ym $PS1 \e[m'
kus \e[ alustab värvi muutmise käsuga, x;y märgivad kasutatavat värvipaari, $PS1 on kasutatava shell'i prompt ja \e[m lõpetab värvi muutmise käsu.
Prompt'i värvi punaseks muutmiseks tuleb sisestada järgnev käsk:
export PS1="\e[0;31m[\u@\h \W]$ \e[mv"
Tulemuseks on:
Värvide tabel
0;30 : must
0;34 : sinine
0;32 : roheline
0;36 : helesinine
0;31 : punane
0;35 : lilla
0;33 : pruun
0 asendamisel 1-ga saadakse antud värvi heledam varjant
Tput käsklus
Värvide lisamisel võib kasutada ka tput käsku.
Järgnev muudab prompt'i punaseks:
export PS1="\[$(tput setaf 1)\]\]\u@\h:\w $ \[$(tput sgr0)\]"
Tput'i käske:
tput bold : paksus kirjas kuvamine
tput rev : kuvab värvid ümberpööratult, taustavärv ja märkide värv on vahetuses
tput sgr0 : taastab algseisud
tput setaf {CODE} : märkide värvi seadmine
tput setab {CODE} : taustavärvi seadmine
Tput'i värvide tabel:
0 : must
1 : punane
2 : roheline
3 : kollane
4 : sinine
5 : violetne
6 : helesinine
7 : valge
Muudatuste salvestamine
Uued shell'i seaded on ajutised, see tähendab, et väljalogimisel seaded kaovad. Selle vältimiseks piisab seadete lisamisest.bashrc või .bash_profile faili.
Avame .bashrc faili:
sudo nano .bashrc
Lisame lõppu:
export PS1='\[\e[1;32m\][\u@\h \W]\$\[\e[0m\] '
Prompt on nüüd uuel sisselogimisel rohelist värvi.
Võimalik on ka keerukamate konstruktsioonide lisamine:
#If id command returns zero, you’ve root access. if [ $(id -u) -eq 0 ]; then # you are root, set red colour prompt PS1="\\[$(tput setaf 1)\\]\\u@\\h:\\w #\\[$(tput sgr0)\\]" else # normal PS1="[\\u@\\h:\\w] $" fi
Kasutaja prompt muutub juurkasutaja õigustesse logimisel punaseks.
Kokkuvõtteks
Artiklis sai tutvutud erinevate keskkonnamuutuja PS1 modifitseerimise võimalustega, millega saab muuta prompt'is kuvatavat informatsiooni ning ka prompt'i enda värvi. Kindlasti pole see artikkel Linuxi kasutamise seisukohalt hädavajalik, sest sisestatavad käsud ei olene prompt'i kujust või värvist. Samas on prompt'i modifitseerimisega võimalik parandada kasutajamugavust ning muuta oma ekraanipilti isikupärasemaks.
Lisaks lugemist
Bashish võimaldab teemade lisamist tekstiterminalidele
Aterm võimaldab visuaalsete effektide lisamist
Kasutatud kirjandus
How to: Change / Setup bash custom prompt (PS1)
BASH Shell change the color of my shell prompt under Linux or UNIX
Koostas Juhan Liiva A21