'!' bash中的历史扩展字符给出“未找到”

时间:2013-03-30 22:57:40

标签: bash

我在Windows 7计算机上使用命令提示符窗口中的bash shell。我可以做'历史'并获取历史记录缓冲区中的命令列表但是当我执行'!12'重新执行命令编号12时,我得到'!12未找到'。

我搜索了一个解决方案,发现默认情况下扩展字符设置为'!'但无法找到检查是否设置为其他内容的方法。

-MG

1 个答案:

答案 0 :(得分:3)

您可以使用histchars shell变量更改历史命令扩展字符。默认值为!^# - 第一个字符是历史记录扩展字符,第二个字符是快速扩展字符(例如^X^Y^),第三个是注释字符。

您还需要检查! - 样式历史记录扩展是否已启用。使用set -H将其打开,然后set +H将其关闭。