用途:该技能提供使用 fd 查找文件的专家知识。fd 是 find 的快速、易用替代品,适合按文件名、扩展名或路径模式在目录中定位文件,也适合为后续批处理构建文件列表。
主要能力:基于 Rust 的并行执行,默认彩色输出,自动遵循 .gitignore,智能大小写不敏感搜索,语法比 find 更简单,支持正则表达式。可按扩展名(-e rs)、类型(-t f/d/l/x)、深度(-d 3)、大小(--size +10m)、修改时间(--changed-within 1d)筛选;可用 -H 包含隐藏文件、-I 包含被忽略文件、-u 完全不受限;可用 -E 排除路径,-g 使用 glob,-s 区分大小写。
使用方式:基本用法如 fd config、fd -e rs、fd '^test_.*.py$'。执行命令用 -x(逐条)或 -X(批量),例如 fd -e jpg -x convert {} {.}.png、fd -e md -X wc -l。输出格式可用 --format 占位符:{} 完整路径、{/} 文件名、{//} 父目录、{.} 去扩展名路径、{/.} 去扩展名文件名。查找包含特定文件的目录可用 fd -t f 'main.tf$' --format '{//}'。可与 rg 组合,如 fd -e py -x rg "import numpy" {}。
适用场景:开发中查找测试文件、配置文件、源码文件;清理操作如删除 .pyc、node_modules、旧日志;查找大文件;按路径搜索并排除目录;定位 Terraform、Node.js、Go、Python、Rust 项目根目录。
限制:复杂布尔逻辑、POSIX 兼容性要求、高级权限检查、非标准文件属性等场景应改用 find。若需查询或转换文件内容,应使用 jq 等工具而非 fd。资料未提供安装命令、版本要求与平台支持细节。