[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [riminilug-general] bash



Il 29/10/2014 11:48, ptux ha scritto:
Salve, 

nel mio ~/.bashrc ho fatto questa personalizzazione di PS1 (prompt): 
PS1="\[\e[1;32m\][\u][\w]\ $\[\e[0m\] \[\033[s\]\[\033[1;\$((COLUMNS-29))f\]\$(date)\[\033[u\]" 

Per cui ho un prompt verde:
[ptux][~]/ $
e nell'angolo opposto della finestra la data e l'ora corrente del comando $date

due problemi però segnano questa impostazione:
1. la data è lunga e vorrei togliere la visualizzazione del giorno della settimana (mer), 
   dei secondi e quanto la segue (indicazione, CET).
qui la soluzione e' semplice :) man date
puoi sostituire il semplice comando date specificando il formato che vuoi (nella man trovi tutto)
esempio
PS1="\[\e[1;32m\][\u][\w]\ $\[\e[0m\] \[\033[s\]\[\033[1;\$((COLUMNS-29))f\]\$(date +%H:%M:%S)\[\033[u\]" 

2. l'orario non si aggiorna, ma rimane quella del lancio del terminale.

In realta' non e' proprio cosi'... ovvero, almeno nel mio sistema l'orario si aggiorna ogni volta che premi enter nella shell.  Evidentemente la bash aggiorna ogni volta che gli viene restituito il controllo.
Se vuoi un aggiornamento continuo senza interazione con l'utente non credo sia possibile... ma posso sbagliare.
Dovresti eventualmente inventarti qualcosa con ncurses... ma vuoi che gia' qualcuno non abbia una soluzione gia' pronta ?! questo e' un lavoro da sistemisti, quindi fatevi avanti ;)

Ivan