GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo cambiar rápidamente la primera palabra en un comando Bash?

!$ se expande a la última palabra de su comando anterior.

Así que podrías hacer:

cat foo/is/a/very/long/path/to/bar.c

rm !$

o:

git diff foo/bar.c

git checkout !$

Tus ejemplos solo repetían la última palabra, así que !$ funcionó bien Si realmente tuviera muchos argumentos que quisiera repetir y solo quisiera cambiar la primera palabra, podría usar !* , que se expande a todas las palabras del comando anterior excepto el cero.

Consulte la sección "EXPANSIÓN DEL HISTORIAL" del bash página de manual Hay mucha flexibilidad allí.


Ctrl +a para ir al principio de la línea, luego Alt +d para eliminar la primera palabra.


No estoy seguro de si sería más rápido o no, pero vea este artículo, particularmente el punto #.3:

  1. Reemplace una cadena del comando anterior usando ^str1^str2^

En el siguiente ejemplo, primero ejecutamos el comando ls para verificar un archivo. Más tarde nos dimos cuenta de que queríamos ver el contenido del archivo. En lugar de escribir el nombre completo del archivo nuevamente, podemos simplemente reemplazar “ls” en el comando anterior con “cat” como se muestra a continuación.

$ ls /etc/cron.daily/logrotate

$ ^ls^cat^
cat /etc/cron.daily/logrotate

Linux
  1. ¿Cómo usar el comando basename?

  2. ¿El comando "eval" en Bash?

  3. ¿Cómo detener el comando Buscar después de la primera coincidencia?

  4. ¿Cómo se interpreta el comodín * como un comando?

  5. ¿Cómo puedo recordar el argumento del comando bash anterior?

Cómo usar el comando Bash let {con ejemplos}

Cómo usar el comando de lectura Bash

Cómo usar el comando cd de Linux para cambiar de directorio

Cómo cambiar la prioridad de un proceso en Linux

Cómo cambiar el nombre de host en CentOS 8

Cómo cambiar el color de salida de 'Echo' en Linux