Il comando history è molto utile quando si lavora spesso a terminale e si vuole richiamare un comando dato in passato. Ma esistono varie opzioni non così comuni e poco conosciute, in questo articolo vedremo come utilizzarle in bash e zsh.
Uso base
Mostra gli ultimi comandi dati a terminale.
Si applica a bash and zsh
history
Output:
312 sudo -i 315 mkdir joom 316 cd joom 317 unzip ~/Downloads/Joomla_1.5.21_to_1.5.22-Stable-Patch_Package_ita.zip 318 cd /tmp 319 ls 320 ls -alrt 321 mkdir image 322 cd image 323 unzip ../ed ambientale.zip.html 324 cd ed ambientale
Compito 1 Visualizzazione di data e ora nei comandi dell’ history
Una cosa utile e semplice è quella di aggiungere ad ogni singolo comando che abbiamo utilizzato la data e l’ora in cui sono stati dati, questo può essere utile per capire quando qualcosa è accaduto nel nostro sistema.
Bash Aggiungere al file ~/.bash_profile
export HISTTIMEFORMAT='%Y-%m-%d %H:%M:%S '
Zsh Aggiungere al file ~/.zshrc
HISTFILE=~/.zsh_history
HISTSIZE=9999
SAVEHIST=9999
setopt extendedhistory
Compito 2 cercare una stringa all’interno dell’history
Sapete una parte del comando che si desidera cercare nella vostra storia.
Si applica a bash e zsh
Nel terminale, tenere premuto Ctrl e premere R per avviare “reverse-i-search” (bash). Digitare una lettera – come s – e avrete un risultato per il comando più recente nella vostra storia che inizia con s. Continuare a digitare per restringere il risultato. Quando arrivate sul comando desiderato, premete Invio per eseguire il comando suggerito.
Compito 3 eseguire come root l’ultimo comando dato
Avete dato un lungo comando e dopo vi siete resi conto che era necessario essere root
Si applica a bash e zsh
sudo !!
Vi verrà chiesta la vostra password, dopodichè verrà eseguito l’ultimo comando dato, questo perchè !! viene interpretato come l’ultimo comando dato.
Compito 4 Cerca nella command history “string” ma evita di eseguirlo
Stampa la prima occorrenza della stringa trovata nella storia, ma non eseguirlo.
Si applica a bash e zsh
!string:p
!string cercherà la cronologia dei comandi ed eseguià il primo comando che corrisponde a ‘string’. Se non ti senti sicuro farlo mettere :p alla fine per stampare senza eseguire. Consigliato quando si esegue come superuser.
Compito 5 cancellare una riga dalla history
Utile quando per sbaglio si digitano password
Si applica a bash
history -d < history number >
Cancella il comando con < history number > dalla lista dei comandi dati.
Compito 6 mostrare i comandi più utilizzati
utile per decidere quali nuovi alias fare o per avere delle statistiche.
Si applica a bash e zsh
history | awk '{print $2}' | sort | uniq -c | sort -rn | head
Output:
53 aptitude 47 ip 40 ls 33 apt-get 26 cd 25 xrandr 24 man 17 history 15 rmmod 15 apt-cache
Guardate anche la Bash history cheatsheet
Popular Posts:
- None Found