GNU/Linux >> Tutoriales Linux >  >> Linux

¿Por qué borrar el historial de bash no es suficiente?

En algunos casos (algunas versiones bash), haciendo:

$ history -c; history -w

O simplemente

$ history -cw

Borrará el historial en la memoria (las flechas hacia arriba y hacia abajo no tendrán comandos para enumerar) y luego escribirá eso al $HISTFILE archivo (si el $HISTFILE se trunca por la instancia de bash en ejecución).

A veces bash elige no truncar el $HISTFILE archivo incluso con histappend opción no establecida y $HISFILEZIZE establecido en 0.

En tales casos, la opción nuclear siempre funciona:

history -c; >$HISTFILE

Que borre la lista histórica de comandos grabados en la memoria y todos los comandos grabados previamente en el archivo. Eso asegurará que el shell en ejecución no tenga un historial registrado ni en la memoria ni en el disco; sin embargo, otras instancias en ejecución de bash (donde el historial está activo) pueden tener una copia completa de los comandos leídos desde $HISTFILE cuando se inició bash (o cuando un history -r se ejecuta).

Si es también requería que no se escribiera nada más (ningún comando nuevo) de la sesión actual en el archivo de historial, entonces, unset HISTFILE evitará cualquier tipo de registro.


bash tiene un historial de sesiones en la memoria que se escribe en un archivo si la variable de shell HISTFILE se establece en un nombre de archivo cuando bash salidas.

Si elimina el archivo señalado por HISTFILE , desactive esa variable y salga de bash , entonces esa sesión de shell no dejará ningún historial persistente.

Error al desarmar el HISTFILE variable, pero eliminar el archivo simplemente vaciaría el historial persistente, pero el historial de la sesión actual se guardaría cuando se cierre el shell.


Linux
  1. Cómo borrar el historial de Bash en Linux

  2. Comando no encontrado en Bash arreglado

  3. ¿Por qué Nullglob no es predeterminado?

  4. ¿Por qué el archivo de traducción de Bash no contiene todos los textos de error?

  5. ¿Por qué `exit &` no funciona?

Comando de historial en Linux (Bash History)

¿Limpieza automática del historial de bash?

bash sh - comando no encontrado

Restablecer la posición de búsqueda del historial de bash

¿Por qué Bash está en todas partes (en la mayoría, si no en todas, las distribuciones de Linux)?

Cómo:¿Historial ilimitado de Bash/shell?