Tamaño del historial de bash
- Descripción general del historial de Bash
-
Use el comando Bash
history
para ver el historial de Bash - Tamaño del historial de bash
- Modificar el tamaño del archivo de historial de Bash
- Establecer tamaño de archivo de historial de Bash ilimitado
- Controla el historial de Bash
-
Guarde el historial en
HISTFILE
antes de cerrar la sesión
En este tutorial, aprenderemos sobre el historial de Bash, su tamaño y cómo podemos cambiar el tamaño de nuestro historial y los límites de manejo. Antes de pasar a nuestro tema, primero descubramos por qué necesitamos el historial en un shell Bash y cómo podemos tomarlo.
La mayoría de los desarrolladores, administradores de sistemas e ingenieros de aplicaciones de software pasan mucho tiempo en la línea de comandos de Linux. Siendo humanos, cometen errores de tipeo.
Además, muchos comandos tienen una lista de parámetros/opciones (con su respectivo orden). Por lo tanto, es difícil recordarlos en su orden exacto.
Por lo tanto, la historia nos ayuda a recordar el comando anterior escrito en el shell Bash.
Descripción general del historial de Bash
En términos de historial, Bash realiza un seguimiento de los comandos, archivos y accesos directos. Los usuarios pueden escribir en la línea de comando con la utilidad historial
.
La utilidad historial
proporciona información útil. Ayuda a rastrear cómo se pueden haber producido cambios en el sistema actual o en la cuenta.
Bash tiene dos comandos integrados relacionados con el historial de Bash:
historia
: este comando proporciona una lista de los comandos utilizados anteriormente de su historial de Bash, y también le permite modificar el historial de Bashfc
- Este comando realiza todas las tareas del comandohistorial
y permite la ejecución del comando.
Toda la información sobre el historial de Bash se guardará en el archivo ~/.bash_history
para los usuarios de Bash, mientras que podría ser solo .history
para otros usuarios.
Comencemos con nuestro comando historial
y veamos cómo funciona.
Use el comando Bash history
para ver el historial de Bash
Si desea ver su historial completo, puede escribir el comando historia
en el shell. Enumerará todo el historial del archivo de historial.
$ history
La salida se verá así:
1 ping google.com
2 sudo apt update
3 ping google.com
4 java --version
5 sudo apt install openjdk-17-jre-headless
6 sudo apt-get install gcc
7 sudo apt-get install gpp
8 sudo apt-get install g++
9 sudo apt-get install mingw-w64
10 sudo apt-get install codeblocks
11 codeblocks
12 sudo apt update
13 sudo apt update mu-editor
14 sudo apt install mu-editor
15 sudo apt update
16 python3 --version
17 clear
18 snap find pycharm
19 sudo snap install pycharm-professional --classic
20 clear
21 cd desktop/python
22 cd desktop/python task5.py
...
También hay otros comandos útiles de historial
de Bash que no explicaremos, pero puede leerlos desde este sitio web.
El comando fc
en Bash en Linux también se conoce como el comando fix
. Principalmente, se utiliza para modificar comandos de varias líneas.
El parámetro -l
con el comando fc
muestra el historial de comandos anteriores.
Veamos el siguiente ejemplo del comando y su salida:
$ fc -l
302 284 ./a.out
303 285 gcc execve1.c -o e1
304 286 gcc execve2.c
305 287 ./a.out
306 288 $ sudo snap install whatsdesk
307 289 sudo snap install whatsdesk
308 290 cd ..
309 291 cd CodeForces/
310 292 pwd
311 293 history
312 294 1 ping google.com
313 295 ls
314 296 wc Test.c
315 297 fc -l
316 298 ls
317 clear
Tamaño del historial de bash
Si habla del archivo de historial de Bash, cree que también hay algunos datos. El valor predeterminado del archivo de historial de Bash es 500
a 1000
.
Es el número máximo de entradas en el archivo histórico. Pero no es permanente, ya que podemos configurar el tamaño de nuestro historial en la medida que queramos usando diferentes comandos.
Explorémoslos.
Configurar el historial de Bash
Para configurar el historial de comandos de Bash, debe realizar cambios en el archivo ~/.bashrc
. El archivo ~/.bashrc
se puede actualizar usando el siguiente comando nano
:
$ nano ~/.bashrc
Una vez que haya modificado, presione Ctrl+O seguido de Ctrl+X para guardar y cerrar el nano
editor. Luego, ejecute los siguientes comandos para recargar la configuración de Bash:
$ source ~/.bashrc
o
$ . ~/.bashrc
Ambos comandos harán modificaciones en el archivo de historial de Bash.
Modificar el tamaño del archivo de historial de Bash
Las variables HISTSIZE
y HISTFILESIZE
están relacionadas con el historial de Bash. La variable HISTSIZE
tiene un recuento de los comandos Bash máximos que se almacenarán en caché, mientras que la variable HISTFILESIZE
tiene un recuento de los comandos principales almacenados en el archivo de historial.
De forma predeterminada, podemos mantener un máximo de 500 comandos en el archivo de historial.
Podemos ver estos valores imprimiendo estas variables; la salida puede variar en diferentes máquinas/configuraciones. Aquí hay una ejecución de muestra y el resultado relacionado:
$ echo $HISTSIZE
$ echo $HISTFILESIZE
1000
2000
Podemos configurar estos valores agregando las siguientes líneas en el archivo ~/.bashrc
:
$ HISTSIZE = 6000
$ HITFILESIZE = 6000
Nuevamente, podemos imprimir estas variables para verificar los valores:
$ echo $HISTSIZE
$ echo $HISTFILESIZE
6000
6000
Establecer tamaño de archivo de historial de Bash ilimitado
La sección anterior analiza el método para modificar el tamaño del historial en Bash. Sin embargo, a veces es útil dejar que se establezca en un tamaño sin restricciones. ¿Cómo haremos eso? ¡Vamos a explorar!
También puede configurar el tamaño de su historial de Bash o el tamaño total del archivo siguiendo estos pasos:
-
Cambie el archivo de historial de Bash. Como puede leer en StackOverFlow, hay algunos problemas con el archivo de historial de Bash, ya que se trunca en algunos casos.
Podemos superar este problema cambiando la variable de entorno
HISTFILE
para usar un directorio diferente.export HITSFILE= ~/.history
HISTFILE
se refiere a la ruta/ubicación del archivo de historial (el valor predeterminado es~/.bash_history
). -
Aumentar el tamaño de la historia. Establezca las variables
HISTFILESIZE
yHISTSIZE
en una cadena vacía para que el tamaño del historial de Bash sea ilimitado.$ export HITSFILESIZE= $ export HITSIZE=
-
Copiar el historial existente. Aunque estamos usando un nuevo archivo de historial, no debemos perder los comandos de archivo anteriores, por lo que copiaremos el contenido del archivo anterior al nuevo.
$ cp ~/.bash_history ~/.history
Controla el historial de Bash
Puede excluir comandos del historial de Bash para evitar el ruido de salida o por razones de seguridad. Puede hacer esto usando el comando de control de historial HISTCONTROL
, que controla qué historial se almacena.
Puede especificarlo para ignorar las entradas duplicadas y las entradas con espacios en blanco iniciales en su archivo ~/.bashrc
.
ignorar espacio
: elimina los comandos que comienzan con una lista de historial de espacio.ignoredups
: esto elimina los comandos duplicados.ignoreboth
: esto habilita tantoignoredups
comoignorespace
.borrados
- Esto elimina los duplicados de toda la lista.
$ export HISTCONTROL=ignorespace:ignoredups
También puede controlar los comandos para que sean ignorados usando la variable HISTIGNORE
. Es una lista de patrones separados por dos puntos en los que podemos especificar todos los comandos que queremos omitir del historial.
Por ejemplo, si desea ignorar los comandos básicos y más frecuentes (por ejemplo, ls
y pwd
) en la lista de historial, escriba la siguiente línea en el archivo ~/.bashrc
:
$ export HISTIGNORE="ls:pwd:"
Puede hacer más con el historial de comandos de Linux Bash que repetir los comandos antiguos.
Guarde el historial en HISTFILE
antes de cerrar la sesión
Los comandos se escriben en el archivo Bash solo después de que el usuario cierra la sesión. Sin embargo, la opción de escritura está disponible con el comando historial
para escribir el historial en el archivo antes de cerrar la sesión.
La sintaxis es:
$ history -w
Este comando escribirá todo el historial de comandos de la sesión actual en el HISTFILE
. Después de esto, el script de comando estará disponible para uso futuro.
En este artículo, finalmente, hemos cubierto el historial de Bash, el tamaño del historial y el tamaño del archivo o cómo podemos modificar el historial de Bash y su tamaño a un rango limitado o ilimitado.