推荐一款比 Find快10 倍的搜索工具 FD

fd 是基于 Rust 开发的一个速度超快的命令行搜索工具,fd 旨在成为 Linux / Unix 下 find 命令的替代品。

fd 虽然不能提供现在 find 命令所有的强大功能,但它也提供了足够强大的功能来满足你日常需要。比如:简洁的语法、彩色的终端输出、超快的查询速度、智能大小写、支持正则表达式以及可并行执行命令等特性。

项目地址:https://github.com/sharkdp/fd

安装 fd

fd 具有良好跨平台特性,支持在 Linux、macOS、Windows 等多种平台下安装。下面我们介绍下几个比较常用平台的安装方法:

Ubuntu / Debain

Fedora

macOS

Windows

Scoop 和 Chocolatey 都是 Windows 下的包管理系统,其具体使用方法都可参考其官网。

更多系统的安装方法可参考官方文档。

fd 命令行选项

fd 使用实例

简单搜索

fd 只需带上一个需要查找的参数就可以执行最简单的搜索,该参数就是你要搜索的任何东西。例如:你想要找一个包含 pace 关键字的文件名或目录。

注:fd 默认是不区分大小写和支持模糊查询的。

按指定类型进行搜索

默认情况下,fd 会搜索所有符合条件的结果。如果你想指定搜索的类型可以使用 参数,fd 目前支持四种类型:、、、,分别表示:文件、目录、符号链接、可执行文件。下面我们来看几个实际的例子:

只搜索包含 pace 关键字的文件

只搜索包含 pace 关键字的目录

搜索指定目录

fd 默认会在当前目录和其下所有子目录中搜索,如果你想搜索指定的目录就需要在第二个参数中指定。例如:要在指定的 目录中搜索包含 passwd 关键字的文件或目录。

通过正则表达式搜索

搜索当前目录下以 head 开头并以 swig 结尾的文件。

搜索当前目录下文件名包含字母且文件名后缀为 PNG 的文件。

其它技巧

搜索隐藏文件

fd 支持隐藏文件搜索,如果你需要搜索隐藏文件可以加上 参数。例:在当前目录下搜索关键字为 zshrc 的隐藏文件。

搜索指定扩展名的文件

在当前目录下搜索文件扩展名为 md 的文件。

在当前目录下搜索文件名包含 reademe 且扩展名为 md 的文件。

排除特定的目录或文件

搜索当前目录下除 lib 目录外的所有包含关键字 readme 的文件或目录。

搜索指定目录下除文件名后缀为 js 的所有文件。

结合外部命令对结果进行批量处理

实现的方式有两种:一是和 find 命令的类似的处理方法,通过 命令来关联相关命令处理。二是通过 fd 自己的 参数来实现。

我们来看一个具体的例子,统计当前目录下所有文件名后缀为 js 的文件的行数。

参考文档

http://www.google.com

http://t.cn/RD03Aom

http://t.cn/ROV0Xos

今日思想

愿你三冬暖,愿你春不寒,愿你天黑有灯,下雨有伞,愿你一路上,有良人相伴。

——佚名

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180813G0CONN00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券