最近我在终端上输入
username:~$ !!
并收到错误狂欢:
bash: !!: command not found
同时,在超级用户下执行时也会成功。
我调查了用户 PATH 的内容,没有发现任何可疑的内容:
/home/username/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
输出如下:
username:~$ history | tail
1993 date
1994 cal
1995 vcal
1996 uptime
1997 uname
1998 uptime
1999 uname
2000 uptime
2001 uname
2002 history | tail
其他:
username:~$ echo foo
foo
username:~$ !!
bash: !!: command not found
答案1
历史扩展可能被禁用:
$ echo foo
foo
$ !!
echo foo
foo
$ set +o histexpand
$ set -o | grep hist
histexpand off
history on
$ echo foo
foo
$ !!
bash: !!: command not found
尝试set -H
或set -o histexpand
。