mercoledì 16 gennaio 2013

Rimuovere comandi da .bash_history

Stavo cercando un vecchio comando che avevo lanciato molto tempo fa sulla mia macchinina di test. Purtroppo nemmeno il ctrl+r mi è tornato utile. Potevo, in maniera molto semplice, ripulirla tutta, ma non volevo perdere alcuni comandi complicati (cala cala merlino cit.) lanciati in passato. Ho deciso quindi di lanciare un bel paio di comandini per pulire la .bash_history dai doppioni.

$ awk '!x[$0]++' .bash_history > .bash_history_new
$ mv .bash_history_new .bash_history

Successivamente ho fatto una piccola modifica al mio .profile, quindi:

$ vi .profile

e ho aggiunto questa semplice riga

export HISTIGNORE=ignoreboth

Finito. Nella mia .bash_history non ci saranno più i comandi duplicati, quindi in caso si voglia evitare di avere la history piena di ping 8.8.8.8 per verificare se è vero che è caduta di nuovo la connessione a internet ritorna molto utile. Ci sono altre opzioni che si possono utilizzare. Per ignorare un singolo comando (ad esempio 'ls'):

export HISTIGNORE="ls"

Se si vogliono ignorare più comandi:

export HISTIGNORE="ls:exit:pwd"

In questo modo evitiamo di loggare quei comandi che per quanto possiamo averli usati spesso, non sono importanti ai fini operativi.

Nessun commento:

Posta un commento