最近我在终端机上打字
username:~$ !!
并从bash得到错误:
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
您的输入语言是什么?您使用的是标准英语还是其他键盘?
—
Sergiy Kolodyazhnyy,2016年
是
—
steeldriver '16
histexpand
在您的shell选项中设置的吗?输出是echo $-
什么?
@muru,...作为以前的freenode #bash常规说话时,我过去常常花很多时间建议人们禁用它,而又不会受到其他渠道长老的任何压制-人们对命令感到惊讶,因为命令
—
查尔斯·达菲
!
字面意思不兑现与通过readline查找不希望以更易于使用的形式提供历史扩展功能的人相比,额外的报价是更常见的事情。
@muru,当我从互联网上找到的许多示例文件之一中盲目复制.bashrc内容时,我在配置文件中间禁用了它。
—
Bulat M.
echo foo
然后!!
呢?另外,请编辑您的问题并添加左右的输出history | tail
。您的Shell会话是否有任何历史记录?