向上箭头键搜索zsh shell给出的2个单词

Aut*_*act 5 shell zsh

使用zsh/oh-my-zsh/iterm2,可以很好地浏览终端命令历史记录.

如果我发出命令说,knife cookbook upload application前几天,并得到命令,我可以做kkniknif并按向上箭头键,它会通过开头的命令历史重复knife的字.

但是如果类似的命令已经开始运行knife,我将不得不使用向上箭头键迭代命令.

但是如果我想搜索多个单词,比如用两者来获取命令knife node,zsh不支持这个并开始显示以just开头的命令knife.

那么,有没有办法获得以两个单词开头的命令?这样我只需输入两个单词并按向上箭头键即可显示那些以两个单词开头的命令.

ZyX*_*ZyX 2

除了@Shep 答案之外,我建议将<C-r>行为从仅搜索纯字符串更改为搜索全局模式:

\n\n
bindkey "\\C-r" history-incremental-pattern-search-backward\n
Run Code Online (Sandbox Code Playgroud)\n\n

。在这种情况下,您将通过搜索获得所需的结果knife*node。顺便说一句,如果您这样做了knife node<Up>,zsh 应该搜索以 开头的命令knife node,而不仅仅是以 开头knife。但它不会\xe2\x80\x99t 搜索包含两者knife并由node其他单词分隔的命令,也不会\xe2\x80\x99t 搜索knife node不包含在行开头的命令(谈论history-beginning-search-backward小部件)。

\n