Estoy usando bash. Para explorar mi historial de comandos, invoco el history
comando que creo que llama al programa Gnu del mismo nombre. (No sé si hay una mejor forma específica de bash).
En mi .bashrc actualmente tengo una línea export PROMPT_COMMAND='history -a'
para preservar el historial de las múltiples sesiones de bash que estoy ejecutando.
Si hago historia actualmente solo veo 524 entradas. ¿Es esto configurable? Me gustaría aumentar esto a un número mucho mayor, digamos 2000.
Respuesta1
En primer lugar,history
esLa forma específica de bash, ninguna mejor. El history
comando es un bash incorporado, como puede ver ejecutando
$ type history
history is a shell builtin
Ahora, la cantidad de comandos que recuerda está controlada por la HISTSIZE
variable. Para configurarlo en un número mayor, agregue esta línea a su .profile
(para saber por qué este es un mejor lugar para ello que .bashrc
, consulteaquí):
export HISTSIZE=2000
De ahora en adelante, history
devolverá los últimos 2000 comandos que ejecutó.
Respuesta2
La HISTSIZE
variable dicta cuántos comandos se mantienen en el historial de ejecución y HISTFILESIZE
determina cuántos comandos del historial de ejecución se guardan una vez que se cierra el shell.
Respuesta3
Sí, man bash
dice:
HISTSIZE: la cantidad de comandos para recordar en el historial de comandos
Pero hay una Readline
variable:history-size
Establezca el número máximo de entradas del historial guardadas en la lista del historial. Si se establece en cero, se eliminan todas las entradas del historial existentes y no se guardan entradas nuevas. Si se establece en un valor menor que cero, el número de entradas del historial no está limitado. De forma predeterminada, la cantidad de entradas del historial no está limitada.
Puede configurar history-size
con HISTSIZE=1000
o bind 'set history-size 1000'
con la siguiente línea en su ~/.inputrc
:set history-size 1000
Ejemplos:
HISTSIZE=1000
bind 'set history-size 0'
echo $HISTSIZE # prints 1000
bind -v | grep history-size # prints set history-size 0
history # prints nothing
bind 'set history-size 0'
HISTSIZE=1000
echo $HISTSIZE # prints 1000
bind -v | grep history-size # prints set history-size 1000
history # prints 13 echo $HISTSIZE\n14 bind -v | grep history-size\n15 history
history-size
disponible desde bash-4.0-alpha
:CAMBIOS
Respuesta4
For more information, I am adding it. I used ubuntu 18. This worked for me.
$ echo $HISTSIZE
1000
$ echo $HISTFILESIZE
1000
$ echo $HISTFILE
vi /home/siva/.bashrc # here we need to update the HISTSIZE variable to the required thing.
NOTE: open new terminal and check updated value will bere printed if you run $ echo $HISTSIZE
Reference Link:
https://www.redhat.com/sysadmin/history-command