GNU/Linux >> Tutoriales Linux >  >> Linux

Tutorial de comandos de historia de Linux para principiantes (8 ejemplos)

Si su trabajo implica ejecutar herramientas y scripts en la línea de comandos de Linux, estoy seguro de que hay muchos comandos que ejecutará todos los días. Los nuevos en la línea de comandos deben saber que existe una herramienta, denominada historia. - que le da una lista de los comandos que ha ejecutado anteriormente.

En este tutorial, discutiremos los conceptos básicos del comando de historial utilizando algunos ejemplos fáciles de entender. Pero antes de hacerlo, vale la pena mencionar que todos los ejemplos aquí se han probado en una máquina con Ubuntu 16.04LTS.

Comando de historial de Linux

Si sabe cómo utilizar de manera efectiva su historial de línea de comandos, puede ahorrar mucho tiempo a diario. Los siguientes son algunos ejemplos de preguntas y respuestas que deberían darle una buena idea sobre cómo puede usar el comando de historial para su beneficio.

P1. ¿Cómo funciona el comando de historial?

El uso básico es simple:simplemente ejecute el comando 'historial'.

history

Para que pueda ver que sus comandos ejecutados anteriormente se muestran en la salida. Tenga en cuenta que he usado el comando 'más' para asegurarme de que la pantalla de salida esté pausada en la primera página (la salida completa de 'historial' suele ser muy larga).

P2. ¿Cómo hacer que el historial también muestre la fecha y la hora?

Si desea que el comando de historial muestre la fecha y la hora de ejecución de cada comando, puede hacerlo exportando la variable HISTTIMEFORMAT de la siguiente manera:

export HISTTIMEFORMAT="%F %T: "

Eso es todo. Ahora, cuando ejecute el comando 'historial', verá la información de fecha y hora en el resultado.

En caso de que vea que la fecha y la hora son las mismas para todos los comandos, la siguiente explicación debería aclarar las cosas:

If you set the HISTTIMEFORMAT in bash your new entries get stored in the history file with a 
timestamp, older commands that don't have a timestamp (those before you ever set HISTTIMEFORMAT
will display one and the same date-time-stamp (I assume the one from the first entry found with a
real timestamp).

This problem should solve itself after your complete history has been updated in a few days.

You can look in ~/.bash_history to see what is the first line that has a date-time-stamp.
Those are lines starting with a # followed by a (currently) 10 digit number.

P3. ¿Cómo hacer que el historial deje de grabar comandos?

Si surge una situación en la que no desea que el sistema guarde su historial de comandos, puede hacerlo utilizando la variable HISTSIZE. Simplemente expórtela con cero como valor y estará listo.

Vea el siguiente ejemplo:

Como puede ver, ejecutar el comando 'historial' ahora no produjo ningún resultado.

Tenga en cuenta que también hay una variable HISTFILESIZE. Aquí está la diferencia entre los dos:

HISTSIZE is the number of lines or commands that are stored in memory in a history list while your 
bash session is ongoing.

HISTFILESIZE is the number of lines or commands that (a) are allowed in the history file at startup
time of a session, and (b) are stored in the history file at the end of your bash session for use in
future sessions.

P4. ¿Cómo hacer que la historia no registre ni un solo comando?

Esto se puede hacer configurando la variable HISTCONTROL en 'ignorar espacio'. Esto lo puedes hacer de la siguiente manera:

export HISTCONTROL=ignorespace

Ahora, cada vez que ejecute un comando que no desee que se registre en el historial, simplemente ejecútelo con un espacio inicial.

P5. ¿Cómo realizar una búsqueda rápida en el historial?

Por supuesto, puede usar el comando grep para buscar palabras clave o comandos específicos en la salida producida por el comando de historial. Sin embargo, también existe un método mucho más rápido:reverse-i-search.

Es bastante fácil:todo lo que tiene que hacer es presionar CTRL+R mientras está en la línea de comando y verá que su mensaje se convierte en algo como esto:

Ahora escriba la palabra clave que desea buscar y verá sugerencias coincidentes del historial a la derecha. Por ejemplo, escribí 'hombre' (sin comillas) y el primer resultado que obtuve fue 'hombre a propósito'.

Si esto no es lo que está buscando, puede obtener el siguiente resultado coincidente presionando CTRL+R nuevamente. Entonces, en mi caso, el siguiente resultado que obtuve fue 'búsqueda de búsqueda de hombre'.

Puedes seguir buscando de esta manera. Una vez que obtenga el resultado que desea, simplemente presione la tecla de flecha hacia la derecha y obtendrá el comando completo en su indicador.

Así que ahora puedes ejecutar este comando o usarlo como quieras.

P6. ¿Cómo ejecutar el comando anterior?

Hay dos formas sencillas de ejecutar el último comando ejecutado:presione CTRL+P o ejecute el siguiente comando:

!!

¿No crees (particularmente en la segunda forma)? Pruébalo.

En caso de que el requisito sea ejecutar rápidamente el penúltimo comando, puede hacerlo de la siguiente manera:

!-1

Y así sucesivamente.

P7. ¿Cómo hacer que el historial ignore las entradas duplicadas en la salida?

Esto se puede hacer configurando el HISTCONTROL variable para 'ignorar ambos' y 'borrados'. Puedes hacerlo de la siguiente manera:

echo HISTCONTROL=ignoreboth:erasedups

Ahora, cuando ejecute el comando de historial, la salida no contendrá duplicados.

P8. ¿Cómo borrar el historial?

Si desea borrar el historial existente para poder comenzar de nuevo, use la opción de línea de comando -c.

history -c

Conclusión

Probablemente estará de acuerdo en que la historia es un comando muy importante que debe tener en cuenta. En este tutorial, discutimos varios consejos/trucos importantes para aprovechar al máximo esta herramienta. Una vez que haya practicado estos, diríjase a la página de manual de la herramienta para obtener más información.


Linux
  1. Tutorial de comando cd de Linux para principiantes (8 ejemplos)

  2. Tutorial de comandos de comunicación de Linux para principiantes (5 ejemplos)

  3. Tutorial de comando Linux df para principiantes (8 ejemplos)

  4. Tutorial de comando de fecha de Linux para principiantes (8 ejemplos)

  5. Tutorial de comando de nombre de host de Linux para principiantes (5 ejemplos)

Linux who Command Tutorial para principiantes (8 ejemplos)

Tutorial de comandos Linux nl para principiantes (7 ejemplos)

Tutorial de comandos de Linux nm para principiantes (10 ejemplos)

Tutorial de comandos OD de Linux para principiantes (6 ejemplos)

Tutorial de comando Linux w para principiantes (5 ejemplos)

Tutorial de comandos ss de Linux para principiantes (8 ejemplos)