Silver Searcher - 程序员的代码搜索工具

Silver Searcher是一个免费的开源跨平台源代码搜索工具,类似于ack(类似于程序员的grep工具),但速度更快。

Silver Searcher是一个免费的开源跨平台源代码搜索工具,类似于ack类似于程序员的grep工具 ),但速度更快。 它运行在类Unix系统和Windows操作系统上。

银色搜索者ack之间的主要区别在于前者是为速度而设计的,基准测试证明它确实更快。

如果您花费大量时间阅读和搜索代码,那么您需要使用此工具。 它旨在快速并忽略您不想搜索的文件。 在本指南中,我们将展示如何在Linux中安装和使用Silver Searcher

如何在Linux中安装和使用Silver Searcher

大多数Linux发行版都提供了银色搜索程序包,您可以通过程序包管理器轻松安装它,如图所示。

$ sudo apt install silversearcher-ag					#Debian/Ubuntu 
$ sudo yum install epel-release the_silver_searcher		        #RHEL/CentOS
$ sudo dnf install silversearcher-ag					#Fedora 22+
$ sudo zypper install the_silver_searcher				#openSUSE
$ sudo pacman -S the_silver_searcher           				#Arch 

安装后,您可以使用以下语法运行ag命令行工具。

$ ag file-type options PATTERN /path/to/file

要查看所有支持的文件类型的列表,请使用以下命令。

$ ag  --list-file-types

此示例显示如何递归搜索目录〜/ bin /下包含单词“root”的所有脚本。

$ ag root ./bin/
在文件中搜索模式

在文件中搜索模式

要打印匹配PATTERN的文件名和每个文件中匹配的数量(匹配行数除外),请使用-c开关,如图所示。

$ ag -c root ./bin/
列印匹配数量

列印匹配数量

要区分大小写,请添加-s标志,如图所示。

$ ag -cs ROOT ./bin/
$ ag -cs root ./bin/
匹配案例敏感

匹配案例敏感

要打印搜索操作的统计信息,例如扫描的文件,所用的时间等,请使用--stats选项。

$ ag -c root --stats ./bin/
打印搜索操作摘要

打印搜索操作摘要

-w标志告诉ag只匹配类似于grep命令的整个单词。

$ ag -w root ./bin/

您可以使用--column选项在结果中显示列号。

$ ag --column root ./bin/
在输出中显示列号

在输出中显示列号

您还可以使用ag来搜索纯文本文件,使用-t开关, -a开关用于搜索所有类型的文件。 此外, -u开关可以搜索所有文件,包括隐藏文件。

$ ag -t root /etc/
OR
$ ag -a root /etc/
OR
$ ag -u root /etc/

Ag还支持使用-z标志搜索压缩文件的内容。

$ ag -z root wondershaper.gz
在压缩文件中搜索内容

在压缩文件中搜索内容

您还可以使用-f标志启用以下符号链接(简称符号链接)。

$ ag -tf root /etc/ 

默认情况下, ag会搜索25个深度目录,例如,您可以使用--depth开关设置搜索深度。

$ ag --depth 40 -tf root /etc/

有关更多信息,请参阅silver searcher的手册页以获取完整的使用选项列表。

$ man ag

要了解银色搜索器是如何工作的,请参阅其Github存储库: https//github.com/ggreer/the_silver_searcher

而已! Silver Searcher是一个快速,有用的工具,用于搜索对搜索有意义的文件。 它适用于程序员通过大型源代码库快速搜索。 您可以尝试通过下面的评论表与我们分享您的想法。


分享按钮