Continuiamo con i comandi interessanti e utili che a volte dimentichiamo di usare, avendoli impliciti nel nostro sistema. In questo caso ne useremo uno che ci permetta di giocare un po 'con la nostra storia.
Facciamo un semplice esempio, apriamo un terminale e mettiamo:
$ nano /etc/sudoers
Potranno rendersi conto che non possiamo modificare il file se non siamo amministratori. Quindi usiamo sudo, ma per non ripetere il comando mettiamo:
$ sudo !!
E questo ripeterà:
$ sudo nano /etc/sudoers
Cioè, il comando !! ripeterà il comando che abbiamo eseguito in precedenza nel terminale. Possiamo anche eseguire un altro comando che non conosce in precedenza il suo numero nella cronologia.
Apri un terminale e inserisci:
$ history
Nel mio caso esce qualcosa del genere:
[codice] 495 cd Desktop /496 ls
497 wget -c http://cinnamon.linuxmint.com/tmp/blog/119/classic.png
498 cd
499 cvlc Music / Jamendo / The \ Patinettes \ - \ Bliss \ - \ 2011.06.03 /
500 cvlc Musica / Rock /
[/ Code]
Se eseguo il comando !! viene eseguito il comando precedente, che in questo caso sarebbe:
$ cvlc Música/Rock/
Ma se vuoi eseguire ad esempio il comando:
$ wget -c http://cinnamon.linuxmint.com/tmp/blog/119/classic.png
Dovrei solo mettere:
$ !497
497 è il numero davanti al comando. Semplice vero?
Wow, non lo sapevo, ottime informazioni, grazie.
Questo mi evita di premere la freccia su | start. Grazie per le informazioni.
Lo trovo molto utile, questo in combinazione con Ctrl + R per la ricerca dei comandi rende l'esperienza in tty ancora più piacevole.
Di solito uso un file alias filtrare:
alias h='history | egrep -i'
In effetti ora che ci penso, forse è meglio aggiungere una funzione come questa al file .bashrc:
h () {
# Función para listar comandos del historial
HISTERROR="Se puede utilizar como máximo un parámetro."
if [ $# -eq 0 ] ; then
history | less
elsif [ $# -eq 1 ] ; then
history | egrep -i $1 | less
else
echo $HISTERROR
fi
}
In questo modo, usa h per elencare tutti i comandi nella cronologia, o parametro h per elencare i comandi che corrispondono al parametro (che tra l'altro, consente espressioni regolari).
Uso i direzionali. Allora lo provo.