Linux: ¿cómo dominar el comando history?

Linux - cómo dominar el comando history

En Linux, el comando history se utiliza para consultar el historial de comandos introducidos previamente en el Terminal, como su propio nombre indica. Con este comando, puedes rastrear tus acciones anteriores desde la línea de comandos. Después de leer este artículo, ¡el comando history no tendrá más secretos para ti!

En una máquina Linux, el comando historial es una forma excelente de ver los comandos ejecutados anteriormente. Cada comando ejecutado en la Terminal será registrado en este historial y se asociará un número a cada comando. Así, el historial está numerado, como veremos, donde cada comando tiene un ID, por así decirlo. Este número será esencial para recuperar un comando ejecutado previamente, ya que podremos llamarlo por su número para reproducirlo fácilmente.

1. Introducción al comando history en Linux

Para lanzar el comando history, simplemente escriba la palabra mágica "history" en el terminal de su máquina Linux, ya sea Debian, Ubuntu, Rocky Linux, CentoOS, etc.

historia

Aquí hay un ejemplo, en mi máquina Debian. Puedes ver el número de la entrada en el historial a la izquierda. A la derecha, el comando ejecutado. Aquí, puedes ver un montón de comandos cURL porque estas son las pruebas que llevé a cabo al escribir el artículo anterior sobre cURL.

Linux - Historial de comandos

El sistema de numeración utilizado por la interfaz de terminal de Linux muestra el comando más antiguo al principio de la lista y el más reciente al final. Como puedes ver, el comando 'historial' que acabo de introducir ha recibido el número de identificación 100. 100 comandos en el historial es bastante... ¡Pero podría ser mucho más en un Terminal muy activo...!

Si desea ver los 10 últimos comandos ejecutados, es decir, los 10 comandos más recientes :

historia 10

Esta es una forma de filtrar la salida del comando. Otra forma es usar el comando 'history' con otro comando llamado 'tail'. Ejecuta el comando de abajo, dará el mismo resultado.

history | tail -n 10

2. Reproducir un comando del historial de Linux

Empecemos a divertirnos... Y dejemos que la historia se repita reproduciendo un comando ejecutado previamente. Digamos que queremos reproducir el comando con el ID "99", usaremos esta sintaxis:

!99

Funciona a las mil maravillas:

Reproducir un comando del historial de Linux

Este método es muy útil para recuperar un comando ejecutado hace mucho tiempo: es mucho más productivo que volver al historial con la flecha de dirección...

Y si quieres reproducir el último comando ejecutado, sólo tienes que escribir 2 signos de exclamación (sin espacios).

!!

Como puedes ver, ¡el comando ejecutado anteriormente se ha relanzado! Si estás acostumbrado a utilizar la tecla de flecha arriba, aquí tienes un nuevo método para sustituirla (e impresionar a tus colegas). Más eficaz, en mi opinión.

Para volver a ejecutar el comando anterior con derechos de "root" utilizando "sudo", es muy sencillo, sólo hay que añadir el prefijo :

¡sudo !

Para ir más lejos, puedes ejecutar tu penúltimo comando con la siguiente orden:

!-2

De hecho, empezamos desde el final del historial (comando más reciente) y trabajamos hacia atrás en el historial, en este caso para ejecutar el segundo comando empezando desde el comando más reciente. He utilizado el penúltimo comando como ejemplo, pero usted podría establecer un valor diferente. Pero en este caso, también podrías apuntar al comando con su ID.

3. Navegación por el historial mediante palabras clave

Supongamos que has ejecutado un comando en tu terminal, pero no lo has recordado todo. Realmente quieres encontrarlo de nuevo... Y sabes que es el último comando "curl" que ejecutaste... Para usar este comando de nuevo, puedes llamar al historial introduciendo esta palabra clave:

Rizar

El comando curl más reciente del historial se ejecutará de nuevo en la máquina Linux. El comando history en esta forma también soporta sudo si es necesario:

sudo !curl

4. Búsqueda interactiva en el historial de Linux

Ahora, supongamos que has ejecutado varios comandos que son similares, como yo con todos mis comandos curl en el historial. Con la búsqueda interactiva en Terminal, puedes buscar el comando correcto. Para lanzar la búsqueda interactiva, pulsa la combinación de teclas "Ctrl+R". Tu terminal Linux debería parecerse al siguiente.

Si introduzco "curl -I", la búsqueda me mostrará el último comando de este formulario que he ejecutado.

comando historial y búsqueda interactiva

Puede introducir tantas palabras clave como desee, y el resultado de la búsqueda se actualizará en tiempo real. Pulse la tecla Intro para ejecutar el comando que se muestra a la derecha (después de ":").

Para modificar el comando antes de ejecutarlo, utilice las flechas derecha e izquierda del teclado. El comando seleccionado se muestra en el terminal, y puede realizar los cambios necesarios.

5. Borrar el historial de comandos de Linux

Hasta ahora, hemos visto cómo ver el historial, reproducir un comando, etc. Sin embargo, es posible que estés buscando una manera de purgar el historial por completo o eliminar un comando específico. Si hay una contraseña en texto plano en un comando del historial, eso es un pequeño problema.... El parámetro -d del comando history será tu aliado.

Ejemplo de eliminación del pedido con ID 119 :

historia -d 119

Si ejecutas el comando del historial, podrás ver que ya no está en la lista. Está fuera de la vista, ¡fuera de la mente!

Otro ejemplo... Para borrar entradas del historial entre el ID 110 y el ID 115 :

historia -d 110 115

Eso no es todo, porque puedes borrar del historial los últimos X comandos introducidos en Terminal. Por ejemplo, para borrar los últimos 10 comandos (¡el guión es importante, si no, no tiene el mismo efecto!) :

historia -d -10

Para terminar con una nota alta, puedes purgar todo el historial con el siguiente comando:

historia -c

6. Conclusión

Cuando sientas nostalgia por tu trabajo, puedes divertirte releyendo tu historial de Linux.... Bromas aparte, después de leer este tutorial, estarás familiarizado con lo esencial del comando history en Linux !

Recursos :

También te podría gustar...

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *