Muy útil cuando olvida un sudo al comienzo de su comando, !!
actúa como un alias del comando anterior. Ejemplo:
$ mv /very/long/path/for/a/protected/sensible/file/caution.h .
(...) Permission denined
$ sudo !!
sudo mv /very/long/path/for(...) .
[sudo] password :
- ¿Cómo llamamos a ese doble
!!
truco? Las investigaciones por internet son difíciles debido a ese token. - Como funciona ? Sospecho un enlace con el comando de historial.
- ¿Dónde se define? ¿Puedo definir algún otro yo mismo?
EDITAR: algunos designadores de eventos interesantes
!!:*
Se refiere a los argumentos del comando anterior. Caso de uso:
cat /a/file/to/read/with/long/path
nano !!:*
:p
Simplemente imprima el comando sin ejecutarlo, debe colocarlo al final del designador de eventos.
$ !-5:p
sudo rm /etc/fstab -f
Más aquí .
Es un caso especial de expansión del historial, en el que el shell intenta expandir una palabra comenzando con
—
chepner
!
un comando coincidente en la lista del historial del shell actual. !!
es un caso especial, equivalente a !-1
, donde un número negativo n
siguiente se !
refiere al enésimo comando anterior.
@Costas, más útil, lee
—
Comodín
LESS='+/^HISTORY EXPANSION' man bash
.
man history