GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo usar el comando de historial de Linux

Introducción

La history command en Linux es una herramienta de shell integrada que muestra una lista de comandos utilizados en la sesión de terminal. history permite a los usuarios reutilizar cualquier comando de la lista sin volver a escribirlo.

En este tutorial, le mostraremos cómo el history funciona el comando y diferentes formas de usarlo.

Requisitos previos

  • Un sistema que ejecuta Linux.
  • Una cuenta con privilegios de sudo.
  • Acceso a la ventana de terminal.

Cómo usar el comando de historial de Linux

Uso del history comando sin opciones muestra la lista de comandos utilizados desde el inicio de la sesión de terminal:

history

Para mostrar la lista del historial de comandos con un número limitado de entradas, agregue ese número al history dominio. Por ejemplo, para mostrar solo las últimas cinco entradas, use:

history 5

Una vez que cierra la terminal, el shell Bash guarda las nuevas entradas del historial de comandos en .bash_history archivo.

Usar marcas de fecha y hora

El .bashrc El archivo almacena la configuración del shell Bash. La modificación de este archivo le permite cambiar el formato de salida del history comando.

Abra el .bashrc archivo usando un editor de texto como Nano:

sudo nano .bashrc

Para cambiar el formato de salida para incluir la fecha y las marcas de tiempo, agregue la siguiente línea a .bashrc archivo:

export HISTTIMEFORMAT="%c "

Usando diferentes argumentos después de HISTTIMEFORMAT le permite personalizar el nivel de detalle en la marca de tiempo:

  • %d :Día
  • %m :Mes
  • %y :Año
  • %H :Hora
  • %M :Minutos
  • %S :segundos
  • %F :Fecha completa (formato Y-M-D)
  • %T :Hora (formato H:M:S)
  • %c :Fecha completa y marca de tiempo (formato Day-D-M-Y H:M:S)

Guarde los cambios en .bashrc archivo, reinicie la terminal y ejecute el history comando para confirmar el nuevo formato de salida:

history

Ver el tamaño del búfer de historial

El .bashrc El archivo contiene dos entradas que controlan el tamaño del búfer de historial:

  • HISTSIZE :El número máximo de entradas para la lista de historial.
  • HISTFILESIZE :El número máximo de entradas en el .bash_history archivo.

Editando el HISTSIZE y HISTFILESIZE valores cambia la forma en que el shell de Bash muestra y guarda el historial de comandos.

Por ejemplo, cambiando el HISTSIZE valor a 10 hace la history lista de comandos muestra un máximo de 10 entradas más recientes.

Guardando los cambios en .bashrc archivo, reiniciando el terminal y ejecutando el history El comando confirma el nuevo formato de salida:

history

Repetir un comando

Ejecutando el history El comando le permite reutilizar cualquiera de los comandos de la lista. Por ejemplo, para ejecutar el primer comando (sudo apt update ) de nuevo, use:

!1

Agregar un guión (- ) antes de que el número de comando inicie el conteo desde el final de la lista. Por ejemplo, para reutilizar el décimo último comando (history 5 ), usa:

!-10

Use signos de exclamación dobles para repetir el último comando:

!!

Buscar un comando por cadena

Agregar una cadena después del signo de exclamación ejecuta el último comando que comienza con esa cadena. Por ejemplo, para reutilizar el último comando que comienza con sudo , usa:

!sudo

El uso de este método puede causar problemas si el shell ejecuta un comando inesperado, especialmente al buscar un comando que comience con sudo . Como precaución, agregue el :p El argumento muestra el comando sin ejecutarlo, lo que le permite revisar el comando y decidir si desea ejecutarlo.

!sudo:p

Para buscar un comando que contenga una cadena, pero que no comience con ella, agregue un signo de interrogación al lado del signo de exclamación. Por ejemplo, para reutilizar el último comando que contiene echo :

!?echo

En el ejemplo anterior, el shell reutiliza el último comando que contiene el echo cadena aunque el comando comience con sudo .

Lista de los comandos coincidentes

Combinando history y grep le permite mostrar una lista de comandos que contienen una cadena. Por ejemplo, para enumerar todos los comandos que contienen ufw , usa:

history | grep ufw

Cambiar el comando ejecutado

Utilice la siguiente sintaxis para cambiar el último comando ejecutado:

^[old string]^[new string]^

Por ejemplo, el ufw el comando para habilitar el puerto 20 muestra que el puerto ya está habilitado:

sudo ufw allow 20/tcp

Utilice la sintaxis anterior para cambiar el número de puerto de 20 a 22:

^20^22^

Evitar la grabación de comandos en el historial

Para evitar la grabación de comandos en la lista del historial, deshabilite temporalmente la grabación usando:

set +o history

Para volver a habilitar la grabación, use:

set -o history

Borrar historial

Usa el -d opción con el history comando para eliminar un comando de la lista de historial. Por ejemplo, elimine el comando número 87 con:

history -d 87

Usa el -c opción para borrar toda la lista del historial:

history -c

Actualizar el archivo de historial

El shell Bash guarda las actualizaciones en la lista del historial de comandos cuando sale de la sesión de terminal. La history El comando también le permite guardar cambios mientras está en la sesión de terminal.

Usando el -a le permite agregar las entradas del historial de comandos de esta sesión a .bash_history archivo:

history -a

Otro método es usar el -w opción para guardar la lista de historial completa en .bash_history archivo:

history -w

Linux
  1. Cómo usar el comando grep de Linux

  2. Cómo usar el comando de historial en Linux

  3. Cómo usar el comando Su en Linux

  4. Cómo usar el comando id en Linux

  5. Cómo usar el comando "pantalla" en Linux

Cómo usar el comando superior de Linux

Cómo usar el comando fd en el sistema Linux

¿Cómo usar el comando wget en Linux?

¿Cómo usar el comando xargs en Linux?

Cómo usar el comando RPM en Linux

Cómo usar el comando which en Linux