Výzva k zadání příkazu, neboli prompt je řetězec, který se zobrazuje v terminálu a dává najevo očekávání nového příkazu. Obsah promptů je v shellu uložen v proměnných $PS1 (to je ten, který vidíte běžně) a $PS2 (ten se zobrazí pokud zadáváte víceřádkový příkaz).
Podíváme se, co obsahuje proměnná $PS1 v labu: \h:\w\$ . Obsahuje jméno počítače, dvojtečku, aktuální pracovní adresář, znak dolaru a mezeru. Různých sekvencí se zpětným lomítkem, které můžeme použít existuje více:
\h ... jméno stroje \n ... nový řádek \t ... aktuální čas (HH:MM:SS) \A ... aktuální čas (HH:MM) \u ... uživatelské jméno \w ... pracovní adresář \! ... pořadí spouštěného příkazu v historii \# ... pořadí spouštěného příkazu v aktuálně spuštěném shellu \$ ... znak # pro roota, $ pro všechny ostatní \\ ... zpětné lomítko \[ ... začátek sekvence netisknutelných znaků \] ... konec sekvence netisknutelných znaků
Pozastavme se nad posledními dvěma sekvencemi. Netisknutelné znaky (neplést
s bílými znaky) se nezobrazí přímo v promptu, můžou ale ovlivňovat chování
ostatních. Speciálním případem takového ovlivnění je přidání barev. Sekvence
\[\033[01;32m\]
nastaví barvu na tučnou zelenou. Zkuste
experimentovat s jinými čísly místo 01 a 33. Sekvence \[033[00m\]
vypne všechny zapnuté barvy (vhodné udělat na konci). Na závěr si tedy ukážeme
příklad pěkného obarveného promptu:
PS1='\[\033[01;33m\]\u@\h\[\033[01;34m\] \w \$\[\033[00m\] '
Pokud chcete, aby se vám prompt automaticky nastavoval při každém přihlášení, připište přiřazení do proměnné $PS1 do souboru ~/.bash_profile.