Recientemente escribí en mi terminal
username:~$ !!
y recibí un error de bash :
bash: !!: command not found
Al mismo tiempo, tiene éxito cuando se realiza bajo superusuario.
Investigué el contenido de la RUTA de mi usuario y no encontré nada sospechoso:
/home/username/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Aquí está la salida de:
username:~$ history | tail
1993 date
1994 cal
1995 vcal
1996 uptime
1997 uname
1998 uptime
1999 uname
2000 uptime
2001 uname
2002 history | tail
Otro:
username:~$ echo foo
foo
username:~$ !!
bash: !!: command not found
command-line
bash
bash-history
Bulat M.
fuente
fuente
echo foo
y luego!!
? Además, edite su pregunta y agregue el resultado de máshistory | tail
o menos. ¿Tu sesión de shell tiene algún historial?histexpand
configurado en sus opciones de shell? ¿Cuál es la salida deecho $-
?!
literales que no fueron honrados sin Las citas adicionales eran mucho más comunes que encontrar a alguien que quisiera que la funcionalidad de expansión del historial no estuviera disponible en una forma más fácil de usar a través de readline.Respuestas:
La expansión del historial podría estar deshabilitada:
Prueba
set -H
oset -o histexpand
.fuente
set -o
, o la variable especial$-
set -o | grep hist