No recuerdo el truco donde pude obtener el último comando sin ejecutarlo:
digamos que quiero poder acceder al comando! 1255 al presionar la tecla de flecha hacia arriba y modificar el comando. Entonces, ¿cuál es el truco para llamar al comando?
Intenté poner un eco, pero luego tengo un eco antes del comando, no recuerdo cómo hacerlo correctamente.
Respuestas:
Haré esto
!
Este historial de recuperación1255
es el número de línea que se:p
imprime pero no se ejecutaLuego puede usar la flecha hacia arriba para recuperar el comando anterior (no ejecutado) y puede cambiarlo según lo necesite.
A menudo combino esto con
hg
("History Grep"), mi alias favorito.Esto busca texto en una línea de historial reciente, independientemente del caso y se usa de esta manera:
Cuando deseo buscar comandos vi recientes para editar un determinado archivo y luego quiero reutilizar uno de ellos para editar el mismo archivo pero con una extensión de archivo diferente.
También defino
hga
("History Grep All") para buscar en todo mi historial:pero no lo uso mucho porque mi historial es (intencionalmente) muy grande y obtengo demasiados resultados que luego afectan el desplazamiento a través de las páginas en mi terminal.
fuente
hg
también es la CLI de Mercurial .Al presionar Ctrl+ R(que es el enlace de la tecla de búsqueda incremental inversa de emacs como se movió @gnp en los comentarios) en el terminal le permite buscar en la historia un comando específico. El comando se mostrará y podrá editar antes de ejecutarlo. Verás algo como esto:
Fuente
fuente
el
fc
comando hace lo que quieresfc -l <number>
enumerará el historial de comandos alrededor de ese númerofc <number>
abrirá esa entrada de línea de comando envim
(o cualquiera que sea su editor predeterminado, supongo), para que pueda editarlo, y:wq
estará disponible con la flecha hacia arriba.fuente
En bash se
Ctl+alt+e
expande la shell, por lo tanto, escribir!1255
y luego presionar esta combinación sustituirá la línea actual con el contenido de la entrada de historial 1255fuente
man bash
comoshell-expand-line
. Tal vez hay un atajo establecido para gnome-terminal.Desea utilizar el comando fc mientras especifica la lista en lugar de ejecutar (-l)
fuente