Come sfogliare la cronologia dei comandi da terminale

Tutti certamente sappiamo che per sfogliare gli ultimi comandi da terminale basta premere la freccia in su per ritrovarceli nuovamente pronti per essere lanciati. Ma oltre a questo, possiamo chiedere di più. Infatti, se vogliamo riprendere un comando specifico che abbiamo dato tempo fa, possiamo farlo con estrema facilità. Ad esempio, se un mese fa avevamo dato questo complesso comando:

1
bzr push bzr+ssh://utente@bazaar.launchpad.net/~utente/progetto/branch

possiamo richiamarlo immediatamente digitando solo

1
bzr push

e premere PagUp: il terminale vi farà scorrere la lista dei comandi che cominciano per bzr push.

Per compiere questa magia, è sufficiente editare il file /etc/inputrc e modificare una riga:

1
sudo nano /etc/inputrc

Scorrete in basso fino a trovare il seguente blocco (siamo alle righe 40-42):

40
41
42
# alternate mappings for "page up" and "page down" to search the history
#"\e[5~": history-search-backward
#"\e[6~": history-search-forward

Togliete il commento alle righe 41 e 42 (cioè il carattere #) e salvate con CTRL+O e uscite con CTRL+X.

Chiudete il terminale e riapritelo. Provate ora a digitare una sequenza che avete già fatto, ad esempio:

1
sudo apt

e premete il tasto PagUp. Scorrerete così solo la cronologia che comincia con sudo apt.

A me risulta estremamente utile e fa risparmiare tempo e meningi. :)
Un piccolo video per vedere in atto le operazioni:

9 commenti a “Come sfogliare la cronologia dei comandi da terminale”

  1. paolettopn scrive:

    Ciao,

    ottimo articolo, come sempre!

    Ho già agito come descritto e devo dire che ora è un’altra cosa. Lavorare sul terminale è divenuto + facile ! :D

    Paolo

  2. simo_magic scrive:

    beh, oltre a quello, mai provato history?
    man history
    e poi, se voglio rieseguire il comando numero 256:
    !256

  3. Aldo scrive:

    @ simo_magic

    Con history sfogli la storia di tutti i comandi: con questo, invece, riproponi a bash un comando ben preciso che sai già; utile quando ripeti spesso comandi simili.

  4. ispettore scrive:

    io ho sempre usato CTRL+R per ottenere lo stesso risultato ;)

  5. Lazza scrive:

    Niente male, anche se di solito mi accontento di:
    history | grep quello-che-cerco :-)

  6. Nicola scrive:

    Che il terminale Linux non temesse confronti già lo sapevo, ma ogni giorno ne imparo una!
    Caro Aldo questa dritta è veramente dritta. Quante volte finora ho tenuto premuto la mia freccetta in su per ritrovare qualcosa… ora invece il comfort di utilizzo mi è stato moltiplicato per 10!
    Grazie mille.

  7. Alessandro scrive:

    Post molto interessante, soprattutto per chi, come me, usa spesso il terminale.
    Aggiungo un’altra opzione comoda della bash: gli alias!
    Nel file .bashrc della propria home si possono definire nuovi alias, per esempio aggiungendo:
    alias ll=”ls -lh”
    dopo aver riavviato il terminale, ll viene tradotto come ls -lh

  8. Aldo scrive:

    Esatto!
    Ora te ne suggerisco due io! XD

    Il comando copia (cp) e sposta (mv) sovrascrivono di default un eventuale file con lo stesso nome che si trovasse nello stesso posto di destinazione. Per ovviare a ciò possiamo forzare l’interattività, chiedendoci sempre cosa fare. Ecco le due righe:
    alias cp='cp -i'
    alias mv='mv -i'

  9. Gabriele scrive:

    CTRL+R anche per me!!

Lascia un commento

Sorriso Occhiolino Compiaciuto Soddisfatto Risata Figo Bacio Linguaccia Innocente Neutrale Indeciso Mr. Green! Imbarazzato Triste Preoccupato Shock Piange Arrabbiato Cattivo Scimmia Idea! Domanda Importante Freccia

Se hai una richiesta di supporto tecnico, serviti del forum.

Iscriviti senza lasciare un commento