每当我在我的命令提示符下按Ctrl + r时,似乎我有10毫秒完成键入任何我正在寻找,在这一点上,它search到目前为止我input的任何内容。
它似乎也缺less我input的命令。
另外,当我在search失败之后再次点击逃跑时,它会在我的命令行上发现任何愚蠢的东西。 我如何回到空的命令行?
另外如何滚动search结果?
如果这种逆向search不能更好,有没有更好的方法来search我的历史?
“反向search”中的“我”代表“增量”,因此在您input时进行search。 如果你希望它等到你input完成,你可以使用history-search-backward (未绑定) non-incremental-reverse-search-history (绑定到Meta-p)。 要使用这些function,请首先键入文本,然后按调用该function的按键。
我有history-search-backward绑定到PgUp和`历史 – 向前search`绑定到PgDn。
如你所知,要终止一个search按Esc。 要放弃一个空白命令行的search,请按Ctrl-G。
如果你有很长的历史,可能是延误的原因。 bash使用variablesHISTSIZE和HISTFILESIZE来设置最大历史logging大小。
同时检查variablesHISTIGNORE是否被忽略(即没有放入历史logging)命令。 例如我有它设置为忽略命令,如ls或退出 ,我不需要在我的历史。
要滚动search结果,请按Ctrl-r(向后)或Ctrl-s(向前)。 但是,请注意,Ctrl-s通常用于“locking”terminal(使用Ctrl-Q解锁),因此您可能必须重新映射到其他内容。 你可以使用类似的东西
stty stop ^G
将Ctrl-g映射到terminallocking并释放bash使用的Ctrl-s快捷键(在历史中向前search)。