! 用于在zsh中调用搜索的字符

! 用于在zsh中调用搜索的字符,zsh,Zsh,ZSH中有一个非常好的特性,我很喜欢。当你打字的时候!字符后跟一个单词+制表键,它使shell向上拉最后一个命令,该命令以单词后跟!扩大,;e、 g: % !ssh 然后,预期的行为是,您可以使用向上和向下箭头键在历史记录中循环,范围仅限于那些以ssh开头的命令。现在,我可以在MacOSX上使用它,但由于某些原因,我无法在我的linux机器上使用它。在linux安装中,我的bindkeys如下所示: user@host ⮀ ~ ⮀ bindkey | fgrep history "^N" d

ZSH中有一个非常好的特性,我很喜欢。当你打字的时候!字符后跟一个单词+制表键,它使shell向上拉最后一个命令,该命令以单词后跟!扩大,;e、 g:

% !ssh
然后,预期的行为是,您可以使用向上和向下箭头键在历史记录中循环,范围仅限于那些以ssh开头的命令。现在,我可以在MacOSX上使用它,但由于某些原因,我无法在我的linux机器上使用它。在linux安装中,我的bindkeys如下所示:

 user@host ⮀ ~ ⮀ bindkey | fgrep history
"^N" down-line-or-history
"^O" accept-line-and-down-history
"^P" up-line-or-history
"^R" history-incremental-search-backward
"^S" history-incremental-search-forward
"^X^N" infer-next-history
"^Xr" history-incremental-search-backward
"^Xs" history-incremental-search-forward
"^[ " expand-history
"^[!" expand-history
"^[," _history-complete-newer
"^[/" _history-complete-older
"^[<" beginning-of-buffer-or-history
"^[>" end-of-buffer-or-history
"^[N" history-search-forward
"^[OA" up-line-or-history
"^[OB" down-line-or-history
"^[P" history-search-backward
"^[[5~" up-line-or-history
"^[[6~" down-line-or-history
"^[n" history-search-forward
"^[p" history-search-backward
2) 然后,我键入
Ctrl+v
,然后是向上箭头,然后是向下箭头,我得到:

⮀ ~/.dotfiles ⮀ ⭠ ihacku ⮀ ^[OA
⮀ ~/.dotfiles ⮀ ⭠ ihacku ⮀ ^[OB
3) 我已将您的代码添加到我的.zshrc中:

bindkey '^[OA' up-line-or-search                                                
bindkey '^[OB' down-line-or-search
注意:我在加载
oh my zsh.sh
后添加了这些行

5) 我的.zsh源代码:

. ~/.zshrc 

最后我得到了预期的结果。非常感谢你的帮助

我认为您需要确保
上行或搜索
绑定到
“向上箭头”
键(以其字符代码为准)。在我自己的
.zshrc
(在Linux上运行)中,我用

bindkey '^[[A' up-line-or-search
bindkey '^[[B' down-line-or-search

请注意,这些函数只分配给
“^[[5~”

我认为您需要确保
上行或搜索
绑定到
“向上箭头”
键(以其字符代码为准)。在我自己的
.zshrc
(在Linux上运行),我可以用

bindkey '^[[A' up-line-or-search
bindkey '^[[B' down-line-or-search
请注意,这些函数只分配给
“^[[5~”