🥇 El bash history y el autocompletado

Cuando se escriben comandos en la terminal (en el prompt) un historial de la lista de comandos que se van invocando es guardado en un historial llamado bash history. Existen diferentes razones para esto, como razones de seguridad, ya que provee una forma sencilla de saber que comandos se han ejecutado en el sistema. De igual forma sirve como asistente para autocompletar los comandos, ya sea para ahorrar clicks en el teclado o recordar la sintaxis de algun comando. El historial de comandos del bash es almacenado dentro del directorio HOME del usuario pero como un archivo oculto llamado .bash_history.

Para visualizar el archivo .bash_history podemos usar el comando less que nos irá mostrando el historial de comandos en ambas direcciones.

$ less .bash_history

Para mover el contenido del archivo nos deplazamos hacia arriba o hacia abajo con las teclas PageUp/PageDown, y salimos del visualizador con la tecla q.

Para invocar el último comando ingresado en la terminal se utiliza la tecla flecha arriba, de igual forma si queremos navegar esta lista de comandos previos en sentido inverso usamos flecha-abajo. Una ves localiado el comando a ejecutar basta dar click a la tecla enter.

Existen algunas otras variables que controlan la funcionalidad del historial del bash, para visualizar el límite máximo del history_bash existe la variable HISTFILESIZE.

$ echo $HISTFILESIZE
10000

En este ejemplo el límite máximo del historial es de 10 mil comandos en el historial. En un ambiente seguro lo ideal es que este valor sea 0, de forma que no se tenga acceso al historial de comandos ejecutados, en especial por el administrador.

Otra variable de entorno importante es HISTCONTROL, esta variable provee información adicional del bash y como la historia de este es mantenida.

Un comando útil para la consulta del historial es el comando history por sí mismo. Este imprime el contenido del .bash_history y cada comando tiene en este listado un índice numérico a su izquierda. Para ejecutar un comando de esta lista basta utilizar !(numero), por ejemplo.

68 pwd
69 ls

Para el anterior listado si deseamos ejecutar pwd..

$ !68
$ pwd

La consola autocompletara el comando y solo requerimos presionar enter.

🍿 Autocompletar con TAB

Otra forma de autocompletar que es muy utilizada es el uso de la tecla TAB, solo es necesario ingresar algunas letras del comando que se desea utilizar y presionar un par de ocasiones la tecla TAB para que el comando se autocomplete. Lo mismo ocurre cuando deseamos proveer parámetros en algunos comandos como el cd o el ls, si ingresamos las primeras letras del nombre del directorio, veremos que se van autocompletando los nombres y la ruta de estos.

Navegar a través del sistema de archivos Configuración del shell
comments powered by Disqus