¿Hay alguna manera de influir en el comportamiento del historial de bash?

¿Hay alguna manera de influir en el comportamiento del historial de bash?

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 valores ignorespacey se ignoredupspueden erasedupsingresar 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. texto alternativo
  • 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 ~/.bashrco ~/.bash_aliases.

Respuesta3

Podrías agregar una línea como

export HISTFILESIZE=5000

a su ~/.bashrcpara aumentar el tamaño del historial. Por defecto, los comandos que comienzan con un espacio no se guardan. Esto se debe a export HISTCONTROL=ignorebothque está habilitado globalmente en Ubuntu de forma predeterminada.

También puede ignorar los comandos que comienzan con lo whichusando

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!

información relacionada