核心功能
用 fd PATTERN 这样的简短写法在文件系统中查找条目,替代冗长的 find -iname '*PATTERN*'。它不追求覆盖 find 的全部能力,而是为最常见的查找场景提供合理默认值。
功能亮点
简洁的命令语法
fd PATTERN 即可查找,不必写 find -iname '*PATTERN*' 这类冗长表达式
默认智能过滤
自动跳过隐藏文件与 .gitignore 命中项,需要时用 -H 和 -I 分别恢复
结果并行执行命令
-x 对每个结果并行执行命令,-X 则把全部结果一次性传给同一条命令
彩色区分文件类型
输出按文件类型着色,配色与 ls 一致,长列表中也能一眼分辨
适用场景
• 在项目里按名称片段快速定位某个源文件
• 按扩展名批量收集文件,再交给 clang-format、rg 等命令处理
• 配合 -X 批量转换或清理匹配到的文件
安装配置
bash
Homebrew (macOS): brew install fd Ubuntu 19.04+ / Debian Buster+(官方包,可执行名为 fdfind): apt install fd-find ln -s $(which fdfind) ~/.local/bin/fd Arch Linux: pacman -S fd Fedora: dnf install fd-find Windows: winget install sharkdp.fd choco install fd scoop install fd Cargo(需 Rust 1.90.0 以上及 make): cargo install fd-find
使用方法
bash
fd netfl # 模糊匹配文件名
fd '^x.*rc$' # 用正则表达式匹配
fd passwd /etc # 指定搜索的根目录
fd -e md # 按扩展名查找
fd -g libc.so /usr # 按 glob 精确匹配文件名
fd -H pre-commit # 包含隐藏文件
fd -I num_cpu # 包含被 gitignore 忽略的文件
fd -E .git pattern # 排除指定目录
fd -e jpg -x convert {} {.}.png # 对每个结果并行执行命令关键指标
尚未核验对标产品,此处只列本工具自身指标,不做对比结论。
指标fd
价格免费
开源是
上手难度入门
相关工具
同类工具
优点
- 命令名和写法都比 find 短,fd PATTERN 即可完成大多数查找
- 并行遍历目录,且默认忽略隐藏文件与 .gitignore 命中项,结果更干净
- 智能大小写:全小写模式自动忽略大小写,含大写时自动改为区分大小写
- 内置 -x / -X 并行执行命令,省去 find -exec 的繁琐写法
缺点
- 并不打算支持 find 的全部强大功能,复杂条件筛选仍需回到 find
- Debian / Ubuntu 官方包的可执行文件名是 fdfind,需自行建立 fd 软链
- 默认过滤规则较多,查找隐藏或被忽略的文件必须显式加 -H / -I