GNU/Linux >> Tutoriales Linux >  >> Linux

Diferentes formas de repetir su último comando en Linux

Hoy, te enseñaré cómo repetir tu último comando en Linux. No tiene que volver a escribir los comandos ejecutados anteriormente en su Shell. Por supuesto, usamos la flecha ARRIBA para seleccionar los últimos comandos ejecutados y presione ENTER para ejecutarlos. Sin embargo, también hay otras formas de hacer esto. Podría haber muchas formas de repetir los últimos comandos en sistemas similares a Unix, pero estas son las únicas formas que conozco ahora. Todos estos comandos se probaron en mi escritorio Arch Linux y Ubuntu con shell BASH.

Una advertencia: Cuando pruebe los siguientes métodos, los comandos ejecutados anteriormente se ejecutarán inmediatamente. Solo asegúrate de que tu último comando no haya sido dañino como formatear una partición o eliminar archivos, carpetas o cualquier otro dato importante.

Repetir el último comando en Linux

Ejecutemos algunos comandos.

$ ls -l
$ pwd
$ date
$ uname -r

Como mencioné anteriormente, podemos ejecutar el último comando simplemente presionando el botón ARRIBA flecha y presiona ENTER llave. Esta es la forma más utilizada por muchos usuarios para ejecutar el comando anterior. Este método funcionará en todos los SHELL, independientemente de la distribución de Linux que utilice.

Sin embargo, como ya dije, hay algunos otros métodos para hacer esto.

Ahora, déjame mostrarte cómo ejecutar el último comando con algunos ejemplos prácticos.

Método 1:uso de signos de exclamación

Para ejecutar cualquier último comando ejecutado, simplemente escriba signos de exclamación dobles y presione ENTER:

$ !!

Esto ejecutará el último comando. La salida de muestra sería:

uname -r
5.3.0-40-generic

Añadir sudo delante de !! para ejecutar el último comando como root usuario como a continuación.

$ sudo !!

También puede usar lo siguiente para ejecutar el comando anterior como sudo usuario:

$ su -c "!!"

Salida de muestra:

su -c "uname -r"
Password: 
5.3.0-40-generic

Genial, ¿no? No es necesario que escriba el último comando por completo. Podría ser útil cuando ya ha ejecutado un comando muy largo y no desea volver a escribir el mismo comando nuevamente.

Método 2 - Repetir N-ésimo comando

Es posible que haya ejecutado tantos comandos y desee repetir un comando específico. ¿Qué vas a hacer? ¡Sencillo! Puede hacerlo escribiendo una palabra específica del comando anterior.

Para repetir el comando anterior que comienza con una palabra/letra específica, por ejemplo un , solo escribe:

$ !un

El comando anterior ejecutará el último comando que comienza con las letras "un" .

Salida de muestra:

!un
uname -r
5.3.0-40-generic

Como ve en el ejemplo anterior, no necesita escribir el comando completo (es decir, uname -r ). En su lugar, simplemente escriba algunas letras del comando y se ejecutará cualquier comando anterior que contenga palabras.

Además, si conoce el nombre completo del comando, escríbalo como se muestra a continuación:

$ !uname

Ejecutará el último comando.

¿Qué sucede si no desea repetir el último comando, sino simplemente mostrarlo? A veces, no desea ejecutar un comando, sino simplemente recuperarlo del historial. Si es así, busque el número de prefijo del comando que desea ejecutar:

$ history | grep -i "source"

Salida de muestra:

1664 source googler_at
1678 source googler_at 
1685 source ~/.bashrc
2037 history | grep -i "source"

Digamos que desea recuperar el 1685th comando, pero no desea ejecutarlo inmediatamente, agregue :p junto al comando como se muestra a continuación.

$ !1685:p

Esto mostrará el comando 1685 del historial, pero no lo ejecutará.

Método 3:usar la búsqueda inversa

Otra forma de hacerlo es buscar en el historial de la línea de comandos usando CTRL+R . Presiona CTRL+R para buscar en el historial de la línea de comandos. Personalmente prefiero este método. Busca en el historial de forma interactiva, lo que creo que se siente más seguro que ejecutar comandos a ciegas desde el historial de BASH.

Echa un vistazo al siguiente ejemplo. En el siguiente ejemplo, busqué "ost" , que mostraba el último comando “sudo netctl restart ostechnixjio” en el historial que contenía la palabra "ost" . Luego, presiono ENTER para ejecutar el comando inmediatamente o la tecla de flecha derecha completa el comando y presiono la tecla ENTER para ejecutarlo.

(reverse-i-search)`ost': sudo netctl restart ostechnixjio

Por si acaso, desea editar/modificar el último comando antes de ejecutarlo, simplemente presione la tecla de flecha izquierda , luego edite el último comando y presione ENTER para ejecutarlo. Algunos comandos pueden comenzar con las mismas letras. En tales casos, sigue presionando CTRL+R tecla para recuperar el comando que quería ejecutar.

Método 4:use el símbolo de guión con números de prefijo de comando

Aquí hay otra forma de ejecutar el comando anterior.

$ !-1

Salida de muestra:

uname -r
5.3.0-40-generic

Del mismo modo, !-2 ejecutará el penúltimo comando, !-3 ejecutará el penúltimo comando, y así sucesivamente.

Método 5:usar CTRL+p y CTRL+o

No quiero escribir ningún comando manualmente. ¿Hay alguna forma de repetir un último comando simplemente presionando una tecla en particular en mi teclado? ¡Sí, por supuesto!

Presiona CTRL+P para cambiar al último comando y luego presione CTRL+O para ejecutarlo. Esto hará la maravilla. ¡No se necesita configuración! Puedes usar CTRL+O tantas veces como quieras para volver a ejecutar los últimos comandos.

Método 6 - Usando el comando fc

Esta es otra forma de repetir el último comando ejecutado. El fc El comando se utiliza para enumerar, editar y volver a ejecutar el comando ingresado anteriormente.

Para repetir el último comando usando fc, simplemente ejecute:

$ fc -s

Salida de muestra:

uname -r
5.3.0-40-generic

Lectura sugerida:

  • El tutorial del comando fc con ejemplos para principiantes
  • Aplique etiquetas a los comandos de Linux para recuperarlos fácilmente del historial
  • Recuperar fácilmente comandos de Linux olvidados usando Apropos
  • Pet:un sencillo administrador de fragmentos de línea de comandos
  • Cómo guardar comandos y usarlos a pedido
  • Marque los comandos de Linux para una invocación repetida más fácil

Método 7:usar ALT+tecla de punto

Como dijo uno de nuestros lectores en la sección de comentarios, también podemos usar ALT+. (presione ALT+punto) para recuperar el último comando sin ejecutarlo. Sin embargo, hay una limitación. Presionando ALT+. solo recuperará el último argumento en el comando. Por ejemplo, si su comando anterior es "uname -r" , solo devolverá el -r argumento, pero no el comando completo.

Y eso es todo. Ahora sabe cómo repetir su último comando sin escribirlo en la Terminal. Si desea ver el resultado de sus últimos comandos sin tener que volver a escribirlos, estos métodos le ayudarán.

Si conoce otros métodos, hágamelo saber en la sección de comentarios a continuación. Comprobaré y actualizaré la guía en consecuencia.

Ahora sabía cómo repetir un comando ejecutado previamente. ¿Cómo se repite un comando o programa de Linux hasta que tenga éxito? Bueno, ¡eso es fácil! Consulte la siguiente guía para obtener más detalles.

  • Cómo repetir un comando hasta que tenga éxito en Linux

Espero que esto ayude.


Linux
  1. 2 formas de volver a ejecutar los últimos comandos ejecutados en Linux

  2. Cómo administrar su historial de comandos de Linux

  3. 5 formas de ejecutar comandos UNIX/Linux (y scripts de shell) en segundo plano

  4. UNIX/Linux:ejemplos del comando bash history para repetir los últimos comandos

  5. Repita el comando automáticamente en Linux

5 formas rápidas de matar un proceso en Linux

Maneras simples de reiniciar su Ubuntu Linux

Diferentes formas de apagar Ubuntu Linux usando la línea de comandos

8 formas diferentes de saber la versión del sistema operativo Linux

Conceptos básicos de Linux:3 formas de encontrar su dirección IP local en Debian 11

últimos ejemplos de comandos en Linux