前言
history命令可以显示所有的命令历史记录,但难以查找命令。
聪明的你当然会想到配合grep命令进行搜索,可行但效率太低,这样检索不够灵活,要查找记忆模糊的命令还需要正则匹配。
模糊搜索命令历史记录
fzf是一个交互式命令行模糊搜索工具,可以模糊搜索内容、模糊补全文件路径等,功能强大,更多功能请参考官方文档。
通过自带的包管理器或
homebrew等第三方包管理器安装即可,参考官方文档安装。按下
ctrl+r组合键,进入命令历史记录搜索模式,输入搜索内容,fzf会自动搜索匹配的命令。ctrl+j或ctrl+n向下移动,ctrl+k或ctrl+p向上移动,也可以使用方向键或鼠标滚轮,按下回车选中命令。按下
ctrl+g组合键或Esc键,退出搜索模式,返回命令行。如果你忘了快捷键,可以使用
history | fzf命令,通过管道让fzf模糊搜索history的输出内容。
使用fzf进行文件路径补全
既然提到fzf,那么顺便介绍一下如何使用它进行文件路径补全。
当然,默认按tab键也可以进行补全,但fzf更好用。
- 如果想补全指定目录下的某个文件名,在指定目录下输入两个星号,然后按下
tab键,就会打开fzf的交互式界面进行匹配。 - 例:比如想补全
~/.config/下的某个较长的文件名,ls ~/.config/**,然后按下tab键 - 如果想输入某个用户目录下的路径,可以使用快捷键
ctrl+t打开交互式界面,选中后回车上屏。
