Debe ser consciente del uso de up y abajo teclas de flecha para desplazarse por la lista de comandos ejecutados en su historial de Bash, pero ¿se da cuenta de que hay mucho más en el historial de Bash que simplemente repetir comandos?
Una de esas características del shell Bash que se puede cambiar en su configuración personalizada es el comando de historial, que se ve afectado por algunas variables de entorno y algunas opciones del shell (shopt – un comando para configurar y desactivar las opciones de shell).
[ También te puede interesar:Cómo comprobar el historial de comandos de Linux por fechas ]
Cuando usa varias ventanas de shell o varias sesiones a la vez para el mismo usuario de diferentes sistemas, la forma en que el comando de historial registra los comandos puede volverse un poco engorrosa, y algunos comandos pueden ser sobrescritos por otros más nuevos.
Cómo detener el historial de adición de Bash en Linux
Para evitar que esto suceda, puede configurar la siguiente opción en su ~/.bashrc archivo.
# ignore duplicate entries and don't overwrite the history export HISTCONTROL=ignoredups shopt -s histappend
Una vez definidas las variables, puede usar los nuevos valores ejecutando el siguiente comando.
$ source .bashrc
Cómo aumentar el tamaño del historial de Bash en Linux
Otra posible dificultad con el comando de historial es que puede ocupar una gran cantidad de espacio en disco si no tiene mucho espacio en disco para sus archivos personales. Para evitar que esto suceda, debe usar tres variables de entorno y son HISTFILE , TAMAÑO DEL ARCHIVO DE HIST y HISTSIZE .
HISTFILE—/home/<username>/.bash_history HISTFILESIZE—1000 HISTSIZE—1000
- El ARCHIVO HIST variable especifica el nombre y la ubicación de su historial de Bash .bash_history archivo.
- El HISTFILESIZE especifica el número máximo de comandos que se pueden almacenar en un archivo de historial..
- El TAMAÑO DE HISTORIA La variable especifica cuántos comandos almacenados en caché debe almacenar una sesión de shell en el archivo de historial.
Una vez que alcance los 1000 comandos de Linux, los comandos más antiguos se abandonarán a medida que se guarden los nuevos.
$ echo $HISTSIZE $ echo $HISTFILESIZE $ echo $HISTFILE
De forma predeterminada, cada usuario, incluido el root, tiene asignadas estas variables y tamaños. Si desea cambiar, edite el .bashrc archivo en su directorio de inicio y establezca las variables de tamaño en 2000 comandos como se muestra:
# control the size of the history file export HISTSIZE=2000 export HISTFILESIZE=2000
Para usar los nuevos valores sin cerrar sesión y volver a iniciarla, puede ejecutar .bashrc archivo.
$ source .bashrc
Puede confirmar que sus nuevos valores ahora están activos para su shell actual y cualquier subshell.
$ echo $HISTSIZE $ echo $HISTFILESIZE
Cómo evitar almacenar comandos duplicados en el historial
Si no desea almacenar comandos comunes en su historial de bash, puede usar HISTIGNORE variable para evitar almacenar comandos comunes como ls , contraseña y tiempo de actividad , que normalmente no son muy interesantes de auditar.
Además, si no desea almacenar comandos duplicados, simplemente use el HISTCONTROL variable que indica a su historial que ignore las entradas duplicadas.
Abra el .bashrc archivo en su directorio de inicio y agregue las siguientes entradas:
# ignore common commands export HISTIGNORE=”:pwd:id:uptime:resize:ls:clear:history:” # ignore duplicate entries export HISTCONTROL=ignoredups
Una vez agregadas las variables anteriores, asegúrese de ejecutar el siguiente comando para usar nuevos valores.
$ source .bashrc
El historial de Bash es una herramienta útil, pero puede ser un desafío si no está familiarizado con sus opciones y uso. Hay muchas más opciones accesibles en la historia. Consulte las páginas man para obtener información adicional.