Búsqueda de historial de bash

Búsqueda de historial de bash
Necesitamos escribir varios comandos en el shell para diversos fines. A veces necesitamos ejecutar los mismos comandos varias veces. Es una tarea muy lento o aburrida escribir los mismos comandos varias veces. Afortunadamente, Bash tiene una buena solución a este problema. Al usar el mecanismo de historial de bash, los comandos ejecutados previamente pueden recuperar y ejecutar fácilmente sin escribir el comando nuevamente. Linux Stores Command Line History de cada usuario en el directorio de inicio. De manera predeterminada, el comando BASH History muestra la lista de comandos tipados previamente con números de línea. Pero puede recuperar el historial de comandos con fecha y hora también. En este tutorial se muestra cómo puede modificar la configuración del comando del historial y usar el comando de historial para recuperar la lista de comandos tipados previamente de diferentes maneras.

Configuración del historial:

Se utilizan muchas variables para controlar los registros del historial de comando. Bash Stores Command History de dos maneras. Se puede almacenar en un archivo y en la memoria. Archivo de host La variable se utiliza para establecer la ubicación y el nombre del archivo de historial. Por defecto, la información del historial almacenada en .archivo bash_history. Cuántos comandos se pueden almacenar en un archivo se establece utilizando Histfilizar variable y cuántos comandos de la sesión actual se pueden almacenar en la memoria se establece por Hacer historias variable. Abierto el .bashrc Archivo en cualquier editor y descubra la configuración predeterminada de estos parámetros. Aquí, el editor de texto se usa para editar este archivo.

$ gedit ~/.bashrc

Según el contenido de este archivo, el valor predeterminado de Histfilizar es 2000 y Hacer historias es 1000. Puede cambiar estos valores de acuerdo con su elección.

Activar/deshabilitar la opción de sobrescritura del historial:

Para cada nueva sesión, el archivo del historial se sobrescribe por los comandos de historial actuales al final de la sesión. Si desea mantener el comando de historial anterior y desea agregar los nuevos registros de historial al final del archivo, ejecute el siguiente comando.

$ shopt -s histappend

Ejecute el siguiente comando para verificar la configuración actual de la opción de sobrescritura del historial.

$ Shopt Histappend

Ejecute el siguiente comando para sobrescribir el archivo de historial.

$ shopt -u histappend

Muestre la lista de comandos bash ejecutados previamente:

Para recuperar la lista de comandos ejecutados actualmente de la sesión actual, ejecute el siguiente comando básico.

$ Historia

Puede recuperar el número particular de historia mencionando el número con el comando de historia. El siguiente comando recupera 3 comandos ejecutados finalmente desde el historial.

$ HISTORIA 3

La lista de historial del comando en particular se puede recuperar utilizando el comando con el comando del historial. Por ejemplo, el siguiente comando recupera la lista de historial de todos 'LS' dominio.

$ Historia | grep ls

Ejecución del comando desde el historial:

Puede ejecutar fácilmente cualquier comando desde el historial mencionando el número de línea con '!' símbolo. El siguiente comando ejecutará el comando de la línea número 17 desde el archivo del historial y borrará la pantalla.

ps !17

Puede usar el valor de posición negativo para ejecutar comandos desde el historial. En el siguiente ejemplo, se ejecutan tres comandos y el primer comando ejecutado se ejecuta desde el historial utilizando un valor negativo.

ps!-3

Puedes usar '!!' símbolo para ejecutar el comando más reciente de la historia. En el siguiente ejemplo, 'ls' El comando se ejecuta el último. Así que cuando '!!' se ejecuta y luego ejecutó el comando 'ls' nuevamente.

ps !!

Muestre la lista de historial por fecha y hora:

HistimeFormat La variable se utiliza para recuperar información del historial de comando por fecha y hora. '%F' se usa la fecha de recuperación '%t' se usa para recuperar el tiempo. Ejecute el siguiente comando para recuperar la lista de historial por fecha.

$ Export HistTimeFormat = '%F'

Eliminar los comandos duplicados del historial:

La lista del historial de comandos puede contener la entrada de muchos comandos duplicados si el usuario ejecuta el mismo comando varias veces. Si desea omitir el comando duplicado del historial al momento de recuperar la lista, entonces debe usar Histontrol variable con valor 'Ignoredrups'.

$ Export HistControl = IgnoredUps

Filtrar cualquier comando del historial:

Puedes usar Histignore variable para filtrar cualquier comando desde el historial al recuperar la lista de comandos ejecutados. Si quieres omitir el 'fecha' comando desde la lista y luego ejecute el siguiente comando.

$ Export Histignore = 'Fecha'

Comando de exportación Unset:

Puede un comando de exportación para cualquier tipo de variable definido. Por ejemplo, si quieres desaconsejar Histignore variable que se asigna para ignorar 'fecha' comando luego ejecute el siguiente comando.

$ Unset Export Histignore

Deshabilitar el historial de comando:

Cuando no desee mantener los registros de los comandos ejecutados para ningún propósito de seguridad, deberá deshabilitar el comando de historial. Si el valor de HistsizLa variable E se establece en 0, entonces ningún comando ejecutado de la sesión actual se almacenará en la memoria o en el archivo de historial. Abierto .archivo bashrc y establecer el valor de Hacer historias a 0.

$ gedit .bashrc

Ejecute el siguiente comando para crear el efecto del cambio del .archivo bashrc. Ejecute algunos comandos para verificar el comando del historial está deshabilitado o no.

$ fuente .bashrc

Historia clara de los comandos:

El historial de comandos se puede borrar o eliminar utilizando el comando de historial con -C opción. Puede usar esta opción cuando desee eliminar los registros del comando ejecutado sin deshabilitar el comando de historial.

$ HISTORIA -C

Lista de historial de desplazamiento:

Puede moverse a través de los comandos ejecutados previamente mediante el uso de flecha hacia arriba y hacia abajo. Sin usar la tecla de flecha, puede volver a la lista de historial presionando Ctrl+P y puede avanzar a la lista de historial presionando Ctrl+N. Habilite el comando de historial, ejecute algunos comandos y verifique estas opciones.

Búsqueda de comando desde la historia:

Puede buscar el comando desde el historial presionando Ctrl+R. Cuando se presionan estas teclas, aparecerá una opción de búsqueda. El comando buscará desde el historial basado en el KeyPress por el usuario.

Conclusión

Los usuarios de Linux pueden guardar sus tiempos utilizando el comando de historial de manera eficiente. Los comandos de historial más utilizados se intentan explicar en este tutorial para ayudar a los usuarios a usar este comando correctamente.