fzf MAC 版

免费开源的命令行模糊查找工具,可用于文件、命令历史、进程以及任何列表。

fzf 简介

fzf 是一款免费开源的命令行模糊查找工具。把任何列表交给它,比如文件、命令历史、Git 分支或正在运行的进程,再输入几个字母,fzf 就会立即显示最接近的匹配项,即使这些字母并不相邻,然后返回你选中的那一项。它是一个小巧的单一程序,能在几毫秒内处理数百万个项目。fzf 由 Junegunn Choi 开发,以 MIT 许可证发布。

fzf 在 Apple 芯片 Mac 和 Intel Mac 的“终端”中运行,可通过 Homebrew(brew install fzf)安装。它与 Zsh、Bash 和 Fish 的集成会添加三个实用的快捷键:Control-T 插入文件,Control-R 搜索命令历史,Option-C(Alt-C)跳转到文件夹。它还提供 Vim 和 Neovim 插件。

主要功能

fzf 适用于你能在“终端”中输出的任何列表。

  • 模糊匹配:按顺序输入几个字母即可找到项目,字母之间可以不连续。
  • 快速:几毫秒内处理数百万个项目。
  • 单一程序:只有一个小文件,没有任何依赖。
  • Shell 快捷键:Control-T 选文件,Control-R 查历史,Alt-C 切换文件夹。
  • 模糊补全:输入 ** 再按 Tab 键,即可补全路径等内容。
  • 预览窗口:在列表旁显示文件内容或其他详情。
  • Vim 和 Neovim:在编辑器中搜索文件、缓冲区等内容的插件。
  • 高度可定制:快捷键、布局、颜色和操作都可以修改。

0.74.5 版本新功能

fzf 0.74.5 修复了多个错误。

  • 修复在 tmux 3.8 或更高版本中,在已放大的窗格上打开 --popup 时会取消窗口放大的问题
  • 修复 --gap-line 在行尾截断字符簇的问题
  • 修复无法识别的转义序列混入查询内容的问题
  • 修复与转义序列同时到达的按键丢失的问题
  • 修复重新加载后不触发 focus 事件的问题

fzf 常见问题

fzf 免费吗?

是的。fzf 免费且开源,以 MIT 许可证发布。

如何在 Mac 上安装 fzf?

如果使用 Homebrew,在“终端”中运行 brew install fzf。GitHub 发布页面上也有适用于 Apple 芯片 Mac 和 Intel Mac 的预编译程序。

如何在 Zsh 中开启 fzf 的快捷键?

在 ~/.zshrc 文件中加入 source <(fzf --zsh) 这一行,然后打开新的“终端”窗口。Bash 请在 ~/.bashrc 中使用 eval "$(fzf --bash)";Fish 请使用 fzf --fish | source。

Control-T、Control-R 和 Alt-C 分别有什么作用?

Control-T 把选中的文件或文件夹插入命令行,Control-R 搜索命令历史,Alt-C 跳转到选中的文件夹。在 Mac 上,Alt 就是 Option 键。

什么是模糊匹配?

模糊匹配会找出按顺序包含你输入的字母的项目,即使字母之间还有其他字符。例如,输入 dlrp 就能找到 download-report.txt。

fzf 能预览文件吗?

能。--preview 选项会在你浏览列表时,在旁边显示文件内容或任意命令的输出。

可以在 Vim 或 Neovim 中使用 fzf 吗?

可以。fzf 自带一个基础的 Vim 插件,另一个独立插件 fzf.vim 则增加了搜索文件、缓冲区、行等内容的命令。

fzf 只能搜索文件吗?

不是。fzf 适用于传给它的任何列表,例如 Git 分支、正在运行的进程或命令历史。用管道把列表传给 fzf,它就会返回你的选择。

能让 fzf 使用 fd 或 ripgrep 来搜索文件吗?

能。把 FZF_DEFAULT_COMMAND 或 FZF_CTRL_T_COMMAND 设为 fd 或 ripgrep 命令,fzf 就会使用它们生成的文件列表,同时也会遵循 .gitignore。

fzf.FULLMAC.app 上的 fzf 下载来自哪里?

下载按钮指向 fzf 的官方 GitHub 页面 https://github.com/junegunn/fzf,那里有安装说明和各个版本。fzf.FULLMAC.app 不会修改或重新打包该工具。

相似应用

FULLMAC.app 不托管此应用。下载按钮会将你带到开发者自己的页面。