Bash: Gestión del History
El histórico (history) tiene varias opciones que podemos cambiar para tener un mejor control del mismo. Aquí vamos a ver algunas opciones para el control y gestión del fichero de histórico (history).
- Control del tamaño del fichero de histórico:
Tenemos dos variables de entorno para ello, HISTSIZE y HISTFILESIZE, que indican el tamaño del fichero, por ejemplo:HISTSIZE=1000 HISTFILESIZE=1000
Con esto hacemos que el tamaño máximo del fichero de histórico sea de 1000 comandos o líneas.
Si ponemos el tamaño de la variable HISTSIZE a cero hacemos que no se guarde nada en el histórico:export HISTSIZE=0
- Control de duplicados en el histórico:
En el histórico se van guardando TODOS los comandos que se van introduciendo aunque repitamos 20 veces el mismo, se guardará 20 veces, lo cual es en ocasiones una perdida de espacio, por lo que podemos usar la variable HISTCONTROL para hacer 2 cosas, una eliminar los duplicados consecutivos con ignoredups y dos eliminar los duplicados sean o no consecutivos con erasedups.export HISTCONTROL=ignoredups
o
export HISTCONTROL=erasedups
- Donde guardar el histórico:
por defecto el histórico se guarda en ~/.bash_history pero podemos indicar donde guardarlo con la variable HISTFILE.HISTFILE=~/.bitacora
Un truco muy bueno cuando en un mismo servidor entran varios administradores que se pasan a root y poder controlar y guardar que hace cada uno es guardar un histórico por cada uno de ellos de la siguiente forma:
export HISTSIZE=5000 export HISTFILESIZE=5000 export HISTFILE=/root/.bash_hist-$(who am i | awk '{print $1}';exit)Con esto se guardará en la home de root un fichero de histórico por cada uno de los usuarios que se hayan pasado a root. El tamaño se puede ampliar o reducir a gusto. También podemos poner que ignore duplicados.
Todas estas variables debemos ponerlas en un fichero donde se activen al arranque que puede ser ~/.bash_profile.
Articulos similares:
- Bash: Añadir fecha y hora al listado de History (17 febrero 2009)
- iTerm: poner título a las pestañas (4 agosto 2008)
- Bash: bucles (for, while, until) (3 agosto 2008)
- Bash: operaciones aritméticas (12 septiembre 2008)
- Bash: funciones (15 septiembre 2008)
Revisado: 15 de febrero de 2010 | etiquetas: Bash, history, Shell, Sistemas
































