GNU/Linux >> Tutoriales Linux >  >> Linux

Historial de Bash:cómo ver una marca de tiempo (fecha/hora) cuando se ejecutó cada comando

Junto a cada comando de su. agregar una marca de tiempo (fecha y hora) ¿Historia de Bash? Esto se puede hacer con el HISTTIMEFORMAT Variable bash.

Bash guarda un historial de los comandos que escribes, al que puedes acceder tocando history . De manera predeterminada, verá un número seguido de los comandos que ha usado recientemente:

$ history
1889  cd Cloaker/
1890  ./Cloaker.run
1891  sudo apt upgrade
1892  sudo apt autoremove
1893  history

Con la ayuda de HISTTIMEFORMAT Puede usar la variable bash para mostrar la fecha y la hora en que se ejecutó cada comando. Esto puede ser útil en varias ocasiones, como recordar qué comandos realizó en un período de tiempo determinado, deshacer varias operaciones, etc.

Vale la pena señalar que cuando se establece esta variable, las marcas de tiempo se escriben en el archivo de historial para que se conserven en todas las sesiones de shell. Por lo tanto, la primera vez que lo active, no verá la fecha y la hora correctas para los comandos que utilizó anteriormente.

Otra mejora del historial de bash que le puede gustar:HSTR facilita la búsqueda de su bash o historial de comandos zsh

Configure el historial de bash para mostrar una marca de tiempo para su historial de comandos (solo para la sesión de terminal actual) con este comando:

HISTTIMEFORMAT="%F %T "

Este comando se aplica solo a esta sesión, por lo que puede ver cómo se ve y, opcionalmente, configurar el formato de fecha y hora (consulte a continuación).

Introduce ahora history y debería ver la marca de tiempo para sus comandos de historial de bash:

$ history
2027  2019-07-12 13:02:31 sudo apt update
2028  2019-07-12 13:02:33 history
2029  2019-07-12 13:03:35 HISTTIMEFORMAT="%F %T "
2029  2019-07-12 13:03:38 man date
2030  2019-07-12 13:03:55 history


Exportamos HISTTIMEFORMAT con la siguiente marca de tiempo:

  • %F :fecha completa (año-mes-fecha)
  • %T :Hora (hora:minutos:segundos)


Hay un espacio después %T y antes de " para que haya un espacio en su historial de bash entre la ejecución del comando y el comando en sí. Sin ella, los dos no estarían separados.

Puede ajustar la fecha y la hora. Usa HISTTIMEFORMAT="%Y/%m/%d %T " para mostrar la fecha como año (4 dígitos) -mes-día y la hora como hora (00..24):minutos:segundos. Muestra la fecha como mes/día/año (2 dígitos) con %m/%d/%y . ¿Le gustaría mostrar la hora como 00...12 seguido de AM / PM en lugar de 00...24? Utilice %I:%M:%S %p como formato de tiempo. Consulte el comando Fecha sobre cómo formatear aún más la fecha y la hora.

Ahora es el momento de exportar HISTTIMEFORMAT de tu ~/.bashrc Archivo para configurarlo como predeterminado para todas las nuevas sesiones de terminal para su usuario . Puedes tu. para abrir ~/.bashrc Archiva con un editor de texto y pega export HISTTIMEFORMAT="%F %T " (u otro formato de fecha y hora) a continuación, luego guarde el archivo o ejecute este comando para convertirlo a su formato. escribir ~/.bashrc :

echo 'export HISTTIMEFORMAT="%F %T "' >> ~/.bashrc

Ejecute este comando solo una vez, ya que agrega export HISTTIMEFORMAT="%F %T " a ~/.bashrc cada vez que lo ejecutas.

Después de eso, todo lo que tienes que hacer es hacer el ~/.bashrc Archivo para que la sesión de terminal actual use la nueva configuración (o puede abrir una nueva terminal y recogerá automáticamente la nueva HISTTIMEFORMAT la configuración):

source ~/.bashrc

Recuerde, la primera vez que habilite las marcas de tiempo en su historial de bash, no verá una fecha / hora para ninguno de sus comandos utilizados anteriormente. Solo los comandos que se ejecutan después de que haya habilitado las marcas de tiempo para su historial de bash mostrarán una fecha y una hora al principio de la línea.

Creo que también te gustará:z.lua:una forma más rápida de modificar directorios (comando cd que aprende a medida que lo usas)


Linux
  1. Trucos de la línea de comandos:cómo identificar la fecha y la hora de la ejecución de un comando de Unix

  2. Cómo ver la fecha y hora de reinicio del sistema Linux

  3. CentOS/RHEL:cómo ver los comandos ejecutados en la salida del comando del historial de yum

  4. CentOS/RHEL:cómo obtener la fecha y la hora del comando ejecutado en la salida del comando del historial

  5. Cómo deshabilitar la edición de mi historial en bash

Cómo habilitar la marca de tiempo en la salida del comando de historial de Linux

Comando de historial en Linux (Bash History)

Cómo mostrar el historial de Bash sin números de línea

Cómo habilitar la marca de tiempo en el historial de Bash en Linux

Cómo usar el comando de fecha en Bash Scripting en Linux

¿Cómo agregar una marca de tiempo al registro de script bash?