mac everything的替代品——fzf使用,速度还是很快的!!!

fzf模糊搜索神器的安装和使用

fzf是一个通用的命令行模糊查找器, 通过输入模糊的关键词就可以定位文件或文件夹。结合其他工具(比如rg)可以完成非常多的工作,在工作中可以大幅提高你的工作效率。

fzf可以用于文件、命令历史记录、进程、主机名、书签、git提交等。

1. fzf使用

1.1 安装

 

Using Homebrew

You can use Homebrew (on macOS or Linux) to install fzf.

brew install fzf

# To install useful key bindings and fuzzy completion:
$(brew --prefix)/opt/fzf/install

1.2 使用

安装后, 可以执行下fzf, 先体验下, 另外 fzf 重写了 ctrl+r 搜索历史命令

image-20210318231127907

 
vim $(fzf)  # 搜索后, 回车直接用 vi 打开
vim $(fzf --height 40%) # 高度40%打开
  • 搜索过程中, CTRL-J 和 CTRL-K 向上翻和向下翻

  • bash和zsh的模糊完备, 默认触发是**, 例如: vim **<TAB>, 或 cd **<TAB>, 或 ssh **<TAB>, 简直好用到飞起.

    image-20210318000439297

    • # Files under the current directory
      # - You can select multiple items with TAB key
      vim **<TAB>
      
      # Files under parent directory
      vim ../**<TAB>
      
      # Files under parent directory that match `fzf`
      vim ../fzf**<TAB>
      
      # Files under your home directory
      vim ~/**<TAB>
      
      
      # Directories under current directory (single-selection)
      cd **<TAB>
      
      # Directories under ~/github that match `fzf`
      cd ~/github/fzf**<TAB>
  • 一边查一边预览

     
  • ps -ef | fzf
    seq 100 | fzf
    history | fzf

1.3 搜索语法

TokenMatch typeDescription
sbtrkt fuzzy-match Items that match sbtrkt
'wild exact-match (quoted) Items that include wild
^music prefix-exact-match Items that start with music
.mp3$ suffix-exact-match Items that end with .mp3
!fire inverse-exact-match Items that do not include fire
!^music inverse-prefix-exact-match Items that do not start with music
!.mp3$ inverse-suffix-exact-match Items that do not end with .mp3

 

  • fzf --preview 'cat {}'
  • 可以配合管道使用

     
posted @ 2021-11-06 18:48  bonelee  阅读(2179)  评论(0编辑  收藏  举报