Tim*_*Tim 17 bash command-history search
我想知道如何在不知道命令的前几个字母的情况下搜索历史命令?
使用Ctrl+ Rin搜索时bash,必须给出命令的前几个字母。如果我只知道中间的一些字符,或者一些在开头而一些在中间怎么办?
例如,要搜索cat myfile,我只知道其中有at,或者c在my某处的开头和中间。关键字必须连续定位。例如,在 中cat myfile,我想同时搜索c和my,但Ctrl+R不允许同时指定两者。
jas*_*yan 14
如果您只是想找到该行(以唤起您的记忆),您可以只对您记得的命令部分进行 grep:
history | grep "substring"Run Code Online (Sandbox Code Playgroud)
Gil*_*il' 10
据我所知,Bash 只有一个简单的字符串搜索。
考虑切换到zsh,它具有历史通配符搜索。history-incremental-pattern-search-backward并且history-incremental-pattern-search-forward默认情况下不绑定到键,但您可以绑定它们:
bindkey '^X^R' history-incremental-pattern-search-backward
bindkey '^X^S' history-incremental-pattern-search-forward
Run Code Online (Sandbox Code Playgroud)
然后键入Ctrl+X Ctrl+R ^c*my。