¿Cómo mostrar el historial de comandos del bash con fecha y hora en los sistemas operativos Linux, MacOS o Unix?
La bash proporciona acceso al historial de comandos, los comandos que se ejecutaron previamente.
La variable HISTSIZE se utiliza como el número de comandos que se guarda la lista del historial.
Si el HISTTIMEFORMAT está establecido, la información del timestamp asociado a cada entrada de la historia se escribe en el archivo histórico, marcado con el carácter de la historia comentario.
¿Cómo ver las marcas de tiempo que se escriben en el historial?
Necesitamos definir la variable de entorno denominada HISTTIMEFORMAT como sigue:
1 | $ HISTTIMEFORMAT="%d/%m/%y %T " |
O lo agregamos directamente en el archivo ~/.bash_profile:
1 | $ echo 'export HISTTIMEFORMAT="%d/%m/%y %T "' >> ~/.bash_profile |
- %d – Día
- %m – Mes
- %y – Año
- %T – Hora
Utilice el source command para cargar HISTTIMEFORMAT desde el archivo en el script del bash actual o en el símbolo del sistema:
1 | $ . ~/.bash_profile |
O también,
1 | $ source ~/.bash_profile |
Cómo recuperar el bash history de Linux o Unix de la línea de comandos por fecha y hora
Ahora, veremos el historial de esta manera:
1 | $ history |
El cual se mostrara de la siguiente forma:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | .... .. 986 11/03/10 04:31:36 memcached-tool 10.10.28.22:11211 stats 987 11/03/10 04:31:36 w 988 11/03/10 04:31:37 iostat 989 11/03/10 04:31:37 top 990 11/03/10 04:31:37 at 991 11/03/10 04:31:38 atop 992 11/03/10 04:31:40 collectl 993 11/03/10 04:31:41 grep CPU /proc/cpuinfo 994 11/03/10 04:31:45 vmstat 3 100 995 11/03/10 04:31:55 sar -W -f /var/log/sa/sa12 .... .. |