Bash 智能命令历史搜索不起作用

Bash 智能命令历史搜索不起作用

我设置了历史文件,echo INPUTRC 也在我的主目录中显示了正确的文件。

我的主目录中 inputrc 文件的内容是

"\e[A~": history-search-forward
"\e[B~": history-search-backward

我不知道为什么,但是当我输入一些字符并尝试使用“向上”箭头给我历史记录中最后一个匹配的命令时,我得到的只是历史记录中使用的最后一个命令。

请注意,当我将inputrc内容设置为下面的行(向上 pg 和向下 pg)时,它似乎有效!

"\e[5~": history-search-forward
#"\e[A~": history-search-forward
#"\e[B~": history-search-backward
"\e[6~": history-search-backward

答案1

您使用的箭头键可能无法被终端仿真器识别,因此不会按预期发送到 Bash。尝试在不同的终端模拟器中使用箭头键,看看行为是否相同。

如果这不能解决问题,您可以尝试将以下行添加到文件中~/.inputrc以启用增量搜索:

"\e[A": history-search-backward
"\e[B": history-search-forward

这映射向上箭头键以向后搜索历史记录,向下箭头键以向前搜索。确保在更改文件后重新启动终端~/.inputrc

相关内容