El comando history de Linux explicado con ejemplos, alguno te llevas

Published:

El comando history de Linux muestra la lista de comandos ejecutados previamente en la terminal. Cada comando que ejecuta en Linux se considera un evento y se le asigna un número de evento. Con el comando history podemos recuperar cualquier evento y modificarlo si es necesario.

También es posible reutilizar comandos largos, o simplemente ver que se hizo anteriormente y poder tomar nota en caso que no haya documentación de nada.

USO de History

1- history

Con solo lanzar el comando vamos a ver el número de evento y el comando lanzado.

history

2- Buscar en el comando

Podemos combinarlo con otras herramientas.

2.1- Grep

history | grep k get pods

2.2- Tail

Mostrar los últimos 5 comandos ejecutados.

history | tail -n 5

2.3- Ver los primeros 10 comandos

history | head

2.4- Búsqueda reversa

Con la combinación de teclas Ctrl + R podemos ir tipeando algún comando y podremos ir viendo si fue ejecutado.

3- Limpieza

Para limpiar history podemos hacer completo o determinados procesos.

Completo:

history -c

Eliminar algunos registros mediante su número.

history -d 500

4- Deshabilitar history

Para que no quede registro de lo ejecutado en la terminal hacemos

export HISTSIZE=0

Y ahora al lanzar el comando no traerá nada.

5- Repetir un comando

Al lanzar !! ejecutará automáticamente el último comando en history. Pero podemos ejecutar un determinado comando de history especificando su identificador con un solo signo de !

!10

6- Actualizar archivo de historial

Cuando se cierra una sesión de la terminal, el historial de comandos se escribe automáticamente en el archivo .bash_history. Cuando iniciamos una nueva sesión, la lista de comandos ejecutados anteriormente se lee de ese archivo. Los cambios que realiza en el historial de comandos se escriben en el archivo solo cuando cierra la terminal o cierra la sesión del usuario actual.

Si queremos abrir una nueva ventana de terminal para acceder a la lista completa del historial, se debe escribir el historial completo en el archivo de historial. Vamos a usar el siguiente comando en la primera ventana de la terminal antes de abrir la segunda terminal:

history -a

Podemos forzar la escritura o guardado de lo que venimos haciendo con -w

history -w

También podemos editar manualmente el archivo .bash_history que se encuentra oculto en el perfil de cada usuario y hacer los ajustes necesarios.

7- History con formato

Podemos decirle a history que nos muestro fecha y hora en que se ejecutaron los comandos.

export HISTTIMEFORMAT='%F %T : '

Y luego lanzamos nuevamente el comando para ver el resultado. Pero, para hacer permanente el cambio debemos agregarlo a nuestro .bashrc, porque de lo contrario esto durara solo mientras dure la sesión. Y aclaro que sirve para las otras opciones vistas, todo lo que queremos que permanezca debe estar en el bashrc.

echo "export HISTTIMEFORMAT='%F %T : '" >> $HOME/.bashrc

%F significa la fecha en modo de año-mes-día, mientras que %T es la hora en modo hora-minuto-segundo (horario de 24 horas).

- Advertisement -
Jorge
Jorgehttps://nksistemas.com
Soy Jorge, Sr Sysadmin Linux/DevOps/SRE y creador de NKSistemas.com Trabajo con plataformas: Linux, Windows, AWS, GCP, VMware, Helm, kubernetes, Docker, etc.

Related articles