Recupere el historial de la línea de comandos de Linux por fecha
20
Quiero ver lo que escribí en mi línea de comando bash en un día determinado hace una semana. ¿Hay alguna manera de recuperar el historial de la línea de comandos? Algo como abajo, tal vez?
De forma predeterminada, Historyregistra el momento en que ejecutó un comando, pero no lo muestra. La razón de esto es cuando ejecuta el Historycomando, busca una variable de entorno llamada HISTTIMEFORMAT, que le indica cómo formatear el tiempo. Si el valor se establece nullo no, entonces, de manera predeterminada, no se muestra en ningún momento.
Un ejemplo con algo de tiempo
[qweet@superbox ~]$ export HISTTIMEFORMAT='%F %t '[qweet@superbox ~]$ history
12012-03-06 su -22012-03-06 jbach@mobiletribe.net
32012-03-06 mysql
42012-03-06 ll
52012-03-06 cd /opt/62012-03-06 ll
72012-03-06 exit
82012-03-06 ll
92012-03-06 ls -lsa
102012-03-06 cd ../112012-03-06 ll
122012-03-06 ll
....
Pero eso no es todo. Dado que los valores de las HISTTIMEFORMATtomas strftime(que puedes encontrar aquí por cierto), puedes hacer todo tipo de cosas mágicas. Pero para lo que quieres hacer, lo siguiente funciona.
[qweet@superbox ~]$ export HISTTIMEFORMAT='%F %T %t'[qweet@superbox ~]$ history | grep -e "2012-03-06 14:48"10062012-03-0614:48:05 export HISTTIMEFORMAT='%F %T %t'10072012-03-0614:48:07 history
...
Además, si desea que su HISTTIMEFORMAT persista, considere agregarlo a su bashrcgusto;
echo 'HISTTIMEFORMAT="variables here"'>>~/.bashrc
Verá los cambios cuando abra una nueva pestaña en el terminal, o cuando cierre la sesión y vuelva a iniciarla.
history -E
Respuestas:
De forma predeterminada,
History
registra el momento en que ejecutó un comando, pero no lo muestra. La razón de esto es cuando ejecuta elHistory
comando, busca una variable de entorno llamadaHISTTIMEFORMAT
, que le indica cómo formatear el tiempo. Si el valor se establecenull
o no, entonces, de manera predeterminada, no se muestra en ningún momento.Un ejemplo con algo de tiempo
Pero eso no es todo. Dado que los valores de las
HISTTIMEFORMAT
tomasstrftime
(que puedes encontrar aquí por cierto), puedes hacer todo tipo de cosas mágicas. Pero para lo que quieres hacer, lo siguiente funciona.Además, si desea que su HISTTIMEFORMAT persista, considere agregarlo a su
bashrc
gusto;Verá los cambios cuando abra una nueva pestaña en el terminal, o cuando cierre la sesión y vuelva a iniciarla.
fuente