我很高兴并且非常喜欢 bash shell 的 Ctrl-R 向后搜索功能。我的一些同事不喜欢它,因为它有时会令人困惑。我理解他们。如果输入错误的字符,历史记录中的当前位置是过去的某个位置,并且您将找不到最近的匹配项。
是否有更用户友好的替代方案可以在 shell 历史记录中向后搜索?
我想坚持使用 bash。建议使用替代 shell 并不能解决这个问题。
“丢失位置”的问题解释如下:Reset bash history search position这些解决方案有效。这是正确的。但根据我的观点,那里的解决方案并不简单且用户友好。这些解决方案并不简单直接。这些都是过去的解决方案。过去,人类需要按照计算机想要的输入方式来学习。但今天的工具应该以一种对用户来说容易的方式接受输入。
最佳答案
您还可以使用历史搜索向后
。默认情况下没有绑定(bind)任何键,所以需要添加
"\eq": history-search-backward
到您的~/.inputrc
。然后您可以输入要在历史记录中查找的命令的前缀,例如
cd /l
然后按Alt+q,shell 会将其扩展为
cd /last-visited-dir
再次按下组合键将搜索之前提到过的内容等。
关于bash - bash 中 Ctrl-R 反向搜索的替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56494149/