3.3. Il prompt di default della shell è bruttino, come posso cambiarlo?

Cambiando la variabile d'ambiente PS1 è possibile modificare il prompt della shell. Ci sono alcuni caratteri di escape che possono essere utili per personalizzare ulteriormente il prompt. Questi sono solo alcuni per la shell bash:

\u : l'user corrente
\h : l'hostname
\w : la directory corrente
\@ : l'ora corrente, in formato 12H am/pm
\t : l'ora corrente, in formato 24-ore HH:MM:SS
\d : la data, in formato Giorno della Settimana Mese Data
     
Per la shell tcsh, ovvero quella di default, è necessario impostare la variabile prompt, che accetta i seguenti caratteri di escape:
%n : l'user corrente
%m : l'hostname
%/ o %~ : la directory corrente
%@ : l'ora corrente in formato 12H am/pm
%T : l'ora corrente in formato 24-ore HH:MM
"%d %w %D" : sequenza per la data corrente in formato Giorno della Settimana Mese Data
    
Per ulteriori sequenze di escape, le man page delle due shell, bash(1) e tcsh(1), sono più che esaustive.Un PS1 tipico è user@hostname$ corrisponde a
\u@\h$
    
in bash e a
%n@%m$
    
per quanto riguarda la variabile prompt di tcsh. A volte può essere utile visualizzare l'ora o la directory corrente quindi un prompt adatto sarebbe [ora][directory corrente]$ che è la risultante di
[\@][\w]$
    
e di
[%@][%~]$
    
rispettivamente in bash e in tcsh. Per la shell sh(1) non esistono caratteri di escape, tuttavia è possibile modificare il prompt agendo sempre sulla variabile PS1, assegnandole quindi qualsiasi valore si voglia anche facendo uso di espressioni come in
~paperoga% exportPS1=$(/usr/bin/whoami)$;
paperoga$
    
per settare il prompt con il nome utente attuale.