目录
- 简介
- 首次用户
- 功能特点
- 竞品和相关作品
- 进一步阅读
简介
rg(ripgrep) 是一个逐行方式进行( line-oriented )的文本搜索工具,能够递归搜索目录中的文件内容。默认情况下,rg
将遵守 .gitignore
文件规则自动跳过隐藏的文件、目录和二进制文件。
首次用户
-
使用
x rg
即可自动下载并使用- 在终端运行
eval "$(curl https://get.x-cmd.com)"
即可完成 x 命令安装, 详情参考 x-cmd 官网
- 在终端运行
-
x-cmd 提供1分钟教程,其中包含了 rg 命令常用功能的 demo 示例,可以帮你快速上手 rg 。
-
使用案例:
# 在当前目录下查找包含 imagetext 的所有条目 x rg imagetext # 搜索 awk 类型文件中包含 x_cmd 的所有条目 x rg x_cmd -t awk # 搜索符合正则表达式 '^[A-Z]' 的 awk 类型文件的所有条目 x rg '^[A-Z]' -tawk mod/gl # 把匹配项 `x-cmd` 替换为 `X-CMD` x rg x-cmd -tmd --replace X-CMD
功能特点
- 更为友好的默认配置:
- 遵循
.gitignore
文件规则,跳过相应的文件目录 - 以色彩高亮方式显示搜索结果
- 递归搜索目录中的所有文件(包括子目录的文件)
- 遵循
- 可限定搜索的文件类型:
- 使用
--type python
选项可以让rg
只在 python 文件中搜索指定文本。 - 使用
--type-list
列出rg
支持的所有文件类型和文件扩展名。
- 使用
- 支持搜索非 UTF-8 编码的文件,如 UTF-16、Latin-1、GBK、EUC-JP、Shift_JIS 等。
- 支持搜索压缩文件,如 Brotli、bzip2、gzip、lz4、lzma、xz 、zstandard 等。
- 支持使用 regex 模式和 PCRE2 正则表达式。
竞品和相关作品
- grep 是一款最常用的命令行文本搜索工具,可用于在文件中查找指定内容的文本行。它是 Unix 和类 Unix 操作系统的标准工具,通常与正则表达式一起使用来进行高级文本搜索。
- ack 是一个类似于 grep 的工具,但专门设计用于代码搜索。它默认会忽略版本控制目录和备份文件,并支持多种文件类型。ack 通常用于搜索代码库中的文本,侧重于代码搜索。
- silver(The Silver Searcher): 类似
ack
的代码搜索工具。它的主要特点是速度非常快,并使用了高度优化的算法进行搜索,特别适用于大型代码库或文本文件的搜索。
进一步阅读
- rg 项目的源代码托管在 GitHub,你可以在这里找到最新版本的 rg 和参与社区贡献。
- rg 手册页 - 提供关于 rg 命令行工具的详细信息,包括使用说明、命令选项、示例和其他相关内容。
- Fast Searching with ripgrep - 该文章介绍了如何使用 rg 进行快速搜索。
- 您也可以通过阅读 ripgrep 中文文档,更高效率地去学习如何使用 rg 。
- 您也可以通过阅读 ripgrep: 更快捷的搜索,了解 rg 及其工作原理。
- CLI text processing with GNU grep and ripgrep - 该文章介绍了如何使用 rg 进行 CLI 文本处理。
X-CMD 官网
x-cmd-pkg
x-cmd-1min