
En la terminal, el historial de bash suele ser útil cuando busca una línea de comandos que ya utilizó. Pero, ¿hay alguna forma de influir en el comportamiento del historial de bash (es decir, qué comandos se guardan, durante cuánto tiempo se guardan, cuántos se guardan, etc.)?
Respuesta1
Varias variables controlan el comportamiento de su historial:
HISTCONTROL
: controla cómo se guardan los valores en su historial. Los valoresignorespace
y seignoredups
puedenerasedups
ingresar aquí (sepárelos con dos puntos).HISTFILE
: establece la ubicación del archivo histórico.HISTFILESIZE
: establece el número máximo de líneas en su archivo de historial.HISTIGNORE
: tiene una lista de patrones que bash ignora (verla otra respuestapara la sintaxis).HISTSIZE
: contiene una serie de líneas que se recuerdan en el shell real.HISTTIMEFORMAT
: contiene una expresión sobre cómo se formatea una entrada (verotra respuesta)
Respuesta2
Configuración de marca de tiempo para el historial:
De forma predeterminada, el historial no agrega una marca de tiempo, pero es fácil configurarlo para que muestre la marca de tiempo, solo necesita configurar una variable de entorno.HISTTIMEFORMAT.
export HISTTIMEFORMAT="%h/%d - %H:%M:%S "
- Ejecute el historial nuevamente para ver el resultado.
Si no desea guardar los comandos en el historial, entonces
export HISTSIZE=0
VARIABLES:
- HISTFILE: controla dónde se guarda el archivo histórico.
- HISTFILESIZE: controla cuántos comandos históricos se deben mantener en HISTFILE.
- HISTSIZE: controla cuántos comandos de historial se deben mantener en la lista de historial de la sesión actual.
- HISTIGNORE: controla qué comandos ignorar y no guardar en la lista del historial.
Nota:
- Perderá su configuración una vez que cierre su terminal. Entonces, si desea que sea permanente, debe agregar el comando anterior a
~/.bashrc
o~/.bash_aliases
.
Respuesta3
Podrías agregar una línea como
export HISTFILESIZE=5000
a su ~/.bashrc
para aumentar el tamaño del historial. Por defecto, los comandos que comienzan con un espacio no se guardan. Esto se debe a export HISTCONTROL=ignoreboth
que está habilitado globalmente en Ubuntu de forma predeterminada.
También puede ignorar los comandos que comienzan con l
o which
usando
export HISTIGNORE="l*:which*"
Respuesta4
Hay una manera de contar la historia para NO recordar un comando: simplemente comience con un espacio. También existe una forma muy sencilla de recuperar un comando específico: escriba CTRL+R y una palabra del comando que está buscando.
Ciertamente hay una manera de aumentar el historial predeterminado, que es de 500 líneas por defecto... pero no sé cómo, ¡lo siento!