Ricerca veloce dei comandi

Q: Ricerca veloce di alcuni comandi

Ieri ho letto una man page ma non mi ricordo il nome del comando, e non l'ho scritto da nessuna parte. Come posso riuscire a rileggere quella man page?

A: Guardando .bash_history.

Ci sono buone possibilità che il comando che avete utilizzato è memorizzato in un file chiamato .bash_history . Di default, questo file memorizza gli ultimi 500 comandi digitati al prompt della shell.

Potete vedere velocemente la lista di tutti i comandi digitando history al prompt della shell -- ma l'elenco apparirà velocemente.

Un altro modo in cui potete visualizzare .bash_history è con l'aiuto di un impaginatore come less, digitando less .bash_history al prompt della shell. Per scorrere in avanti, premete Spacebar; per scorrere a ritroso premete il tasto B, per uscire premete Q.

Ma l'uso di un paginatore per ricercare un comando può essere noioso. In alternativa si può ricercare una keyword attraverso il comando grep, un'utility veramente potente.

Se vi ricordate parte del comando che avete digitato al prompt della shell, e se questo comando si trova ancora in .bash_history , potete ritrovarlo velocemente mettendo in pipe l'output del comando history al comando grep.

Se avete letto la man page il giorno prima, ma non vi ricordate il nome, digitate:

history | grep man
		

Vedrete in questa maniera tutti i comandi che al loro interno contengono la parola man.

Esistono molti modi per utilizzare la storia dei comandi. Per altri trucchi e segreti, consultate, la sezione Trucchi sulla storia dei comandi