3.4.1 Il prompt

Quando la shell funziona in modo interattivo, può mostrare due tipi di prompt:

La stringa che costituisce i prompt può contenere delle sequenze di caratteri che vengono interpretati dalla shell come riportato nella tab. 3.1.


|-------|-------------------------------------------------------------|
Sequenza-|Significato---------------------------------------------------|
\a       |segnale acustico (carattere ASCII BEL)                           |
\d       |dataattuale(nelformato DDD  MMM  dd,doveDDD sonoiprimi trecaratteri |
|       |dmeels neomee dddeill n guiomrenroo d deellla g sieotrntiomadnela,m MeMseM) i primi tre caratteri del nome del
\D       |specifica il formato (format) della visualizzazione della data/ora nella sintassi
|       |del comando strftime (man page strftime(3))                    |
\e       |carattere ASCII ESC                                            |
\h       |hostname                                                      |
\H       |hostname   completo,  ovvero  il FQDN    (Fully  Qualified  Domain |
|       |      il FQDN sar`a trattato nel cap. 16.                        |
|       |Name)5                                                       |
\j       |numero dei job gestiti attualmente dalla shell;                      |
|       |\l nome del terminale sul quale `e lanciata la shell                |
\n       |interruzione di riga (newline), corrispondente al carattere ASCII LF   |
\r       |interruzione di riga (carriage return), corrispondente al carattere ASCII CR
\s       |nome della shell                                               |
\t       |orario attuale (nel formato hh:mm:ss -24 ore)                     |
\T\@       |oorraaririoo a attttuuaalele ( (nneell fo forrmmaattoo hhA:Mm/mP:Mss--1122 ororee))                     |
\A       |orario attuale (nel formato hh:mm -24 ore)                       |
\u       |username dell’utente attuale                                       |
\v       |versione di bash                                              |
\V       |release di bash (versione + buildnumber)                          |
\w       |working directory                                              |
\W       |percorso precedente alla working directory (basename)               |
\!       |numero del comando attuale nella command history                 |
\#       |numero del comando attuale                                     |
\$       |# se l’utente corrente `e il superuser e $ altrimenti               |
\nnn     |carattere corrispondentealla codificaASCIIdelnumeroottaleindicato dannn |
\\\[       |uinnizbiaock dsil uasnha ‘\se’quenza di caratteri non stampabili (sequenza di controllo)
\]       |fine di una sequenza di caratteri non stampabili (sequenza di controllo)
-----------------------------------------------------------------------

Tabella 3.1: Sequenze di caratteri particolari interpretabili da bash nella visualizzazione del prompt.

Il prompt primario di default di Bash è

 
shell-version$  
ovvero la variabile di ambiente PS1 contiene la stringa “\s-\v\$ ”, ma nei sistemi GNU/Linux, tramite il file di configurazione /etc/profile è impostato come

 
[username@hostname working_directory]$  
cioè la variabile di ambiente PS1 contiene la stringa “[\u@\h \w]\$ ”.

Il prompt secondario di default di Bash è

 
>  
ovvero la variabile di ambiente PS2 contiene la stringa “> ”.