¿Alguna vez has ejecutado un comando en la terminal y luego te has dado cuenta de que preferirías que no se guardara en el historial? Como administrador de sistemas Linux (sysadmin), mantener ciertos comandos fuera del historial puede ser crucial por motivos de seguridad o privacidad. A continuación, te mostraremos varias técnicas efectivas para lograr esto, asegurándote de que solo tú sepas qué comandos has ejecutado.
¿Por Qué No Querrías que un Comando se Guarde en el Historial?
La terminal es una herramienta poderosa para cualquier sysadmin. Sin embargo, a veces ejecutamos comandos que no queremos que queden registrados en el historial, como:
- Comandos que contienen contraseñas.
- Comandos que modifican configuraciones sensibles.
- Comandos que realizas por error y prefieres que no queden guardados.
Comenzando con un Espacio en Blanco
Una manera sencilla y rápida de evitar que un comando se guarde en el historial de Bash es comenzarlo con un espacio en blanco. Para que esto funcione, necesitas configurar tu Bash adecuadamente. Asegúrate de tener esta línea en tu archivo .bashrc
o .bash_profile
:
export HISTCONTROL=ignorespace
Luego, cada vez que quieras ejecutar un comando sin que se guarde en el historial, simplemente empieza con un espacio:
comando_secreto
Desactivación Temporal del Historial
Otra opción es desactivar temporalmente el historial antes de ejecutar el comando. Esto es útil si necesitas ejecutar varios comandos seguidos sin que se registren.
set +o history
comando_secreto
set -o history
Uso de HISTIGNORE
Si hay comandos específicos que siempre deseas que se excluyan del historial, puedes usar la variable HISTIGNORE
. Añade los comandos que quieres ignorar a esta variable:
export HISTIGNORE='comando_secreto:otro_comando'
De esta manera, cada vez que ejecutes comando_secreto
o otro_comando
, no se guardarán en el historial.
Redirigir el Historial a /dev/null
Si quieres asegurarte de que un comando no quede registrado durante una sesión específica, puedes redirigir el archivo del historial a /dev/null
temporalmente.
HISTFILE=/dev/null comando_secreto
Eliminar el Último Comando del Historial
Si ya has ejecutado un comando y te das cuenta de que no debería haberse guardado, puedes eliminar el último comando del historial utilizando history -d
:
comando_secreto
history -d $(history 1)
Usar builtin command
Para evitar que un comando se guarde en el historial, también puedes utilizar el comando builtin
:
builtin command comando_secreto
Resumen
Cada técnica tiene sus propios usos y ventajas. Aquí tienes un resumen rápido:
- Espacio en Blanco: Rápido y fácil, solo asegúrate de que
HISTCONTROL
esté configurado adecuadamente. - Desactivación Temporal del Historial: Ideal para ejecutar múltiples comandos.
- HISTIGNORE: Perfecto para comandos repetitivos que siempre quieres excluir.
- Redirigir a /dev/null: Útil para sesiones específicas donde no quieres guardar ningún comando.
- Eliminar el Último Comando: Solución rápida si te das cuenta de un error después de ejecutar el comando.
builtin command
: Método alternativo para evitar el registro en el historial.
Con estas técnicas, puedes asegurarte de que los comandos sensibles no se guarden en el historial de Bash, manteniendo así tu trabajo en la terminal más seguro y privado. ¡Prueba estas opciones y encuentra la que mejor se adapte a tus necesidades!
¿Tienes alguna otra técnica que utilices para manejar el historial de la terminal en Linux? ¡Déjanos tus comentarios y comparte tu experiencia!