Inicio > Gestión de paquetes y sistema > history

Guía del comando history: Consultar y gestionar el historial de comandos del shell

El comando `history` muestra una lista de los comandos que el usuario ha ejecutado previamente en el terminal. Esto es muy útil para encontrar y volver a ejecutar comandos utilizados en el pasado, o para recordar qué acciones se han realizado. A través de esta guía, aprenderás sobre el uso básico del comando `history` y diversas opciones necesarias para gestionar el historial.

Descripción general de history

Cada vez que el usuario ingresa un comando en el terminal, ese comando se registra en un archivo de historial (generalmente `~/.bash_history` o `~/.zsh_history`). El comando `history` lee el contenido de este archivo y lo muestra en pantalla, y el historial se conserva incluso después de cerrar la sesión del shell.

Rol principal de history

El comando `history` se utiliza principalmente para los siguientes propósitos:

Principales áreas de uso

  • Reejecución de comandos: Puedes reejecutar fácilmente comandos largos que usaste anteriormente sin necesidad de volver a escribirlos.
  • Seguimiento de tareas: Ayuda a verificar qué tareas se han realizado en el pasado y a comprender el flujo de trabajo.
  • Mejora de la productividad: Ahorra tiempo al encontrar rápidamente comandos que usas con frecuencia.
  • Referencia para escribir scripts: Utiliza combinaciones de comandos que ejecutaste con éxito en el pasado para escribir scripts.

Variables de entorno y history

La funcionalidad del historial se ve afectada por varias variables de entorno:

Principales variables de entorno relacionadas

  • `HISTSIZE`: El número máximo de comandos que se pueden almacenar en memoria. Se mantiene durante la sesión actual del shell.
  • `HISTFILESIZE`: El número máximo de comandos que se pueden almacenar en el archivo de historial (`~/.bash_history`, etc.). Se conserva entre sesiones del shell.
  • `HISTFILE`: Especifica la ruta del archivo donde se guarda el historial de comandos. El valor predeterminado es `~/.bash_history`.
  • `HISTCONTROL`: Controla cómo se registra el historial. (Ej: `ignoredups` - ignora comandos duplicados, `ignorespace` - ignora comandos que comienzan con espacio)

Opciones principales del comando history

El comando `history` ofrece varias opciones necesarias para consultar, modificar y gestionar la lista de historial.

1. Consultar y mostrar historial

2. Modificar y reejecutar historial

Comando generado:

Combina los comandos.

Descripción:

`history` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Ejemplos de uso

Aprende a consultar y reutilizar efectivamente el historial de comandos a través de varios ejemplos de uso del comando `history`.

Consultar los últimos 20 comandos

history 20

Muestra la lista de los 20 comandos más recientes ejecutados con sus números.

Buscar una cadena específica en el historial de comandos

history | grep docker

Usa el comando `grep` para encontrar comandos que contengan 'docker' en el historial `history`.

Reejecutar el último comando `ls`

!ls

Encuentra y reejecuta el comando más reciente que comenzó con `ls`.

Reutilizar el último argumento del último comando

cat /var/log/syslog
less !$

Esto es útil cuando has ejecutado `cat /var/log/syslog` y deseas volver a abrir `/var/log/syslog` con el comando `less`.

Guardar inmediatamente el historial actual del shell en un archivo

history -w

Guarda inmediatamente todos los comandos ejecutados en la sesión actual en el archivo `~/.bash_history` antes de cerrar el shell.

Eliminar un número de historial específico

history -d 125

Elimina el comando número 125 del historial cuando se verifica con el comando `history`. (Nota: una vez eliminado, no se puede recuperar)


Comandos de la misma categoría