Recupera la cronologia della riga di comando di Linux per data


20

Voglio vedere cosa ho digitato sulla mia riga di comando bash in un determinato giorno una settimana fa. C'è un modo per recuperare la cronologia della riga di comando? Qualcosa come sotto, forse?

> history --include-date | grep 2012-02-27`


se stai usando zsh:history -E
Vahid

Risposte:


32

Per impostazione predefinita, Historyregistra l'ora in cui è stato eseguito un comando, ma non lo visualizza. La ragione di ciò è quando si esegue il Historycomando, cerca una variabile d'ambiente chiamata HISTTIMEFORMAT, che gli dice come formattare il tempo. Se il valore è nullimpostato o meno, per impostazione predefinita non viene visualizzato in qualsiasi momento.

Un esempio con un po 'di tempo-

[qweet@superbox ~]$ export HISTTIMEFORMAT='%F %t '
[qweet@superbox ~]$ history
    1  2012-03-06        su -
    2  2012-03-06        jbach@mobiletribe.net
    3  2012-03-06        mysql
    4  2012-03-06        ll
    5  2012-03-06        cd /opt/
    6  2012-03-06        ll
    7  2012-03-06        exit
    8  2012-03-06        ll
    9  2012-03-06        ls -lsa
   10  2012-03-06        cd ../
   11  2012-03-06        ll
   12  2012-03-06        ll
....

Ma non è tutto. Dal momento che HISTTIMEFORMATprende i strftimevalori (che puoi trovare qui tra l'altro), puoi fare ogni sorta di cose magiche. Ma per quello che vuoi fare, le seguenti opere.

[qweet@superbox ~]$ export HISTTIMEFORMAT='%F %T %t'
[qweet@superbox ~]$ history | grep -e "2012-03-06 14:48"
 1006  2012-03-06 14:48:05      export HISTTIMEFORMAT='%F %T %t'
 1007  2012-03-06 14:48:07      history
 ...

Inoltre, se vuoi che il tuo HISTTIMEFORMAT persista, considera di aggiungerlo al tuo bashrcsimile;

echo 'HISTTIMEFORMAT="variables here"' >> ~/.bashrc

Vedrai le modifiche quando apri una nuova scheda nel terminale o quando esci e accedi.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.