Oggi mi è venuto in mente di dare un po più di colore al mio terminale e quindi mi sono messo all'opera per fare alcuni cambiamenti ed aggiungere ad una guida fatta in passato, il colore verde per l'utente normale ed il rosso per quello di root, in più l'orario e la data. Senza scendere troppo nei particolari andiamo a vedere questo tipo di personalizzazione. Iniziamo con il dire che quello che andiamo a modificare è la variabile di ambiente "PS1", quindi per conoscere i dati che si trovano all'interno, basta un:
echo $PS1
che nel mio caso restituisce questo:
\[\e]0;\u@\h: \w\a\]\[\e[1;42m\d\\\t\\\]\u\H\[\e[0;40m\]:\w\$
Nel terminale inserendo la stinga sottostante, subito appariranno le nuove modifiche, che ognuno può ulteriormente modificare a proprio piacimento, e alla fine salvarle in .bashrc per renderle effettive per l'utente normale, o in /root/.bashrc per quello di root. Questa stringa andrà chiaramente a sosituire quella di default che si trova quasi all'inizio di .bashrc.
Utente normale colore verde:
PS1='\[\e[1;42m\d\\\t\\\]\u\H\[\e[0;40m\]:\w\$'
Root colore rosso:
PS1='\[\e[1;41m\d\\\t\\\]\u\H\[\e[0;40m\]:\w\$'
Spiegazione della stringa:
\[
marca l'inizio di una sequenza di caratteri non stampabili, che può essere usata per includere nel prompt una sequenza di controllo del terminale.
\e un carattere ASCII di escape (033)
1;42 formattazione in grassetto colore di sfondo verde intensità normale
m fine di una sequenza ANSI
\d
la data nel formato "Giorno-della-settimana Mese Giorno"
\\ un backslash
\t l'ora corrente nel formato HH:MM:SS 24 ore
\u il nome-utente dell'utente corrente
\H il nome dell'host
0;40 formattazione normale colore di sfondo nero intensità normale
\] marca la fine di una sequenza di caratteri non stampabili
\w la directory di lavoro corrente con HOME abbreviato con una tilde
Lista dei colori: Leggi tutto "Diamo più colore alla shell"