Featured image of post 优雅地搜索命令历史记录

优雅地搜索命令历史记录

用fzf进行模糊搜索

前言

history命令可以显示所有的命令历史记录,但难以查找命令。
聪明的你当然会想到配合grep命令进行搜索,可行但效率太低,这样检索不够灵活,要查找记忆模糊的命令还需要正则匹配。

模糊搜索命令历史记录

fzf是一个交互式命令行模糊搜索工具,可以模糊搜索内容、模糊补全文件路径等,功能强大,更多功能请参考官方文档。

  • 通过自带的包管理器或homebrew等第三方包管理器安装即可,参考官方文档安装。

  • 按下ctrl+r组合键,进入命令历史记录搜索模式,输入搜索内容,fzf会自动搜索匹配的命令。

  • ctrl+jctrl+n向下移动,ctrl+kctrl+p向上移动,也可以使用方向键或鼠标滚轮,按下回车选中命令。

  • 按下ctrl+g组合键或Esc键,退出搜索模式,返回命令行。

  • 如果你忘了快捷键,可以使用history | fzf命令,通过管道让fzf模糊搜索history的输出内容。

使用fzf进行文件路径补全

既然提到fzf,那么顺便介绍一下如何使用它进行文件路径补全。
当然,默认按tab键也可以进行补全,但fzf更好用。

  • 如果想补全指定目录下的某个文件名,在指定目录下输入两个星号,然后按下tab键,就会打开fzf的交互式界面进行匹配。
  • 例:比如想补全~/.config/下的某个较长的文件名,ls ~/.config/** ,然后按下tab
  • 如果想输入某个用户目录下的路径,可以使用快捷键ctrl+t打开交互式界面,选中后回车上屏。
Licensed under CC BY-NC-SA 4.0
Last updated on 2024-07-24 15:41 CST