Al ejecutar comandos, a veces quizás necesite ejecutar un comando con el argumento del último comando. ¿Cómo puedes hacer esto?
Por supuesto, exceptuando el uso de las teclas de flecha y Delteclas: ↑←←←... ←→→DelDelDel... Del<new_command>
.
command-line
bash
Radu Rădeanu
fuente
fuente
Hay algunos accesos directos si desea todos los argumentos del comando anterior, o solo el último argumento.
<command> !*
<command> !$
Ejemplos:
Si desea un único argumento de una lista de argumentos del comando anterior, puede usar
<command> !!:<argNumber>
Ejemplo:
fuente
!
en la versión única arg, por ejemplo,!:2
. Asumiendo bash por defecto.!^
en lugar de!:1
.Mencionado
!*
y!$
es algo bueno, pero cuando necesite hacer un poco de edición, los atajos de línea de lectura le ayudarán.Por ejemplo, en lugar de los innumerables ↑←←←... ←→→DelDelDel... Delsolo puede presionar ↑ Ctrl-a(saltar al inicio de la línea) Alt+d(eliminar hasta el final de la palabra)
Para más información
man readline
y búsquedaDefault key bindings
.fuente
Para tomar el
n
argumento th de su comando anterior, escriba Alt+n
+ Alt_. Por ejemplo, después de:escribir
echo
seguido Alt2Alt_le dará esto en el siguiente mensaje:La "captura de pantalla" después de haber golpeado Alt2es:
Puede repetir Alt_varias veces para obtener el
n
argumento th de comandos anteriores en sucesión.Otra idea útil es definir alias
r="fc -s"
. Entonces, puedes hacer sustituciones de comandos:fuente