Como administradores de sistemas, a menudo nos encontramos en situaciones donde necesitamos revisar comandos previamente ejecutados en la terminal. Aquí es donde el comando history se convierte en un aliado invaluable. Este artículo desglosa el funcionamiento del comando history en sistemas basados en UNIX, brindando ejemplos prácticos para su uso diario.

¿Qué es el comando history?

El comando history en sistemas basados en UNIX es una herramienta integrada en la shell que proporciona un registro de los comandos que se han ejecutado en la terminal. Esta función es extremadamente útil para revisar acciones pasadas, repetir comandos, o aprender de los comandos ejecutados previamente.

Funcionalidades básicas

A continuación listamos las funcionalidades básicas del comando:

  • Listado de Comandos Anteriores: Simplemente escribiendo history en la terminal, obtendrás una lista de comandos previos con un número de identificación al lado de cada uno.
  • Ejecutar Comandos Pasados: Puedes ejecutar rápidamente un comando anterior utilizando !n, donde n es el número del comando en la lista de historial.
  • Búsqueda en el Historial: Para buscar un comando específico, puedes usar Ctrl + R y empezar a escribir una parte del comando. Esto buscará en el historial y te mostrará una coincidencia.

Algunos ejemplos de opciones del comando

Vamos a repasar algunos ejemplos interesantes del comando.

Listar los últimos 10 comandos

Este comando mostrará los últimos 10 comandos ejecutados.

history 10

Ejecutar un comando específico del historial

Re-ejecuta el comando que se encuentra en la línea 25 de tu historial.

!25

Buscar un comando por palabra clave

Sustituye [palabra_clave] con lo que estás buscando, como ls o ssh.

history | grep [palabra_clave]

Ejecutar el Último Comando de Nuevo

Esto repetirá el último comando que ejecutaste.

!!

Personalización y gestión

Por defecto, bash almacena los últimos 500 comandos, pero puedes cambiar esto editando el archivo ~/.bashrc o ~/.bash_profile:

HISTSIZE=1000
HISTFILESIZE=2000

HISTSIZE controla cuántos comandos se mantienen en la memoria y HISTFILESIZE determina cuántos comandos se guardan en el archivo de historial.

Excluir Comandos del Historial

Puede que no quieras que algunos comandos, especialmente aquellos con información sensible, se guarden en el historial. Para esto, puedes exportar la variable HISTIGNORE:

export HISTIGNORE="ls:cd:pwd:exit:clear"

Esto excluye los comandos listados del historial.

Guardar y Cargar Historial

Para guardar el historial en un archivo:

history -w [nombre_archivo]

Y para cargarlo:

history -r [nombre_archivo]

Conclusión

El comando history es una herramienta potente y flexible que todo sysadmin debería dominar. Nos permite rastrear y repetir comandos anteriores de manera eficiente, lo que resulta crucial en la administración diaria de sistemas. Personalizar y gestionar el historial según nuestras necesidades aumenta nuestra eficiencia y seguridad en el trabajo. Con estos conocimientos y ejemplos, podrás aprovechar al máximo el comando history en tu flujo de trabajo diario.


¿Buscas otro comando?

¡Revisa nuestro "Diccionario de comandos para GNU/Linux"!

Diccionario de comandos para GNU/Linux

Haz que cada palabra cuente: tu donación nos inspira a seguir creando contenido. Accede al apartado de Donación para hacer tu aportación