43 个开发者工具,始终保持最新 — 上游每次发布后数小时内即可通过 apt 获取。 加入 Discord

📅 自 起,使用本 apt 镜像将需要订阅。 查看价格

🔎 在 Ubuntu 上安装最新版 ripgrep

按正则表达式递归搜索目录,并遵循你的 gitignore 规则

最新版本:15.2.0 · 更新于 2026-08-10
来源版本
deb.griffo.io15.2.0 ✅
官方 Ubuntu15.1.0 🛑
← 返回首页

什么是 ripgrep?

ripgrep(即 rg 命令)是由 Andrew Gallant 用 Rust 编写的面向行的搜索工具。它会在当前目录中递归搜索正则表达式,同时遵循你的 .gitignore 规则,并自动跳过隐藏文件、被忽略的文件和二进制文件。它是 VS Code 等编辑器背后的搜索引擎,通常比 GNU grep、The Silver Searcher 和 ack 更快。

🚀 为什么最新版本很重要: ripgrep 在各个版本之间持续获得实质性能力——支持超链接以直接跳转到编辑器、--engine auto 可透明回退到 PCRE2、更丰富的 --json 输出,以及正则引擎持续的吞吐提升。官方源中的版本早于其中大部分改进。

⚡ ripgrep 的主要特性

🚀 极快

有限自动机正则引擎、SIMD 字面量扫描、内存映射和并行目录遍历,使它在大型目录树上比 grep 更快。

🙈 遵循 .gitignore

默认跳过被忽略的文件、隐藏文件和二进制文件,因此结果正是你关心的内容。可用 -u-uu-uuu 覆盖。

🌍 完整的 Unicode 支持

默认支持 Unicode——字符类、大小写折叠、单词边界和字素处理都能正确工作,且几乎没有速度损失。

🧩 PCRE2 正则

-P 可启用环视和反向引用。此构建已内置 PCRE2,开箱即用并启用了 JIT。

📄 按文件类型过滤

-t rust 限定语言,用 -T html 排除,或自定义类型。内置 800 多个匹配规则。

🔁 多行与替换

-U 跨行搜索,用 -r 预览替换,用 --json 输出结构化结果。

🚀 始终领先于官方软件源: Debian 和 Ubuntu 在发布时会冻结软件包版本——本仓库通常在数小时内发布新的上游版本。只需 apt upgrade 即可保持最新。

📦 从 deb.griffo.io 安装

运行命令

步骤 1:添加仓库

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt update
install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt update

步骤 2:安装 ripgrep

# 安装最新版 ripgrep
sudo apt install ripgrep

# 验证安装
rg --version
# 安装最新版 ripgrep
apt install ripgrep

# 验证安装
rg --version

步骤 3:Shell 补全

# bash、zsh 和 fish 的补全已随软件包提供——
# 无需配置。打开新的 shell 并按 Tab:
rg --ty<Tab>

# 手册页也会一并安装
man rg

🎯 基本使用示例

日常搜索:

# 搜索当前目录树
rg 'TODO'

# 忽略大小写、全词匹配
rg -i -w 'timeout'

# 显示每个匹配前后 3 行上下文
rg -C 3 'panic!'

# 只列出包含匹配的文件
rg -l 'BurntSushi'

限定搜索范围:

# 仅 Rust 文件
rg -t rust 'unsafe'

# 排除 HTML 和 CSS
rg -T html -T css 'font-size'

# 包含被忽略和隐藏的文件
rg -uu 'password'

# 用 glob 限定
rg -g '*.toml' 'version'

超越普通 grep:

# 通过 PCRE2 使用环视和反向引用
rg -P '(?<=fn )\w+' src/

# 跨行搜索
rg -U 'struct \w+ \{\n[^}]*pub'

# 预览替换(不写入文件)
rg 'v(\d+)\.(\d+)' -r 'v$1.$2.0'

# 供脚本使用的结构化输出
rg --json 'error' | jq -r 'select(.type=="match") | .data.path.text'

🔧 工具集成

许多其他工具都以 ripgrep 作为搜索后端:

  • fzf:rg 为数据源的实时重载交互式 grep
  • Neovim / Telescope: 只要 PATH 中有 ripgrep,live_grep 就会使用它
  • Helix: 全局搜索基于相同的底层库
  • bat: 为搜索结果提供语法高亮预览
  • Yazi: 文件管理器搜索基于 ripgrep

🚀 为什么选择 deb.griffo.io?

📊 仓库对比:
  • 官方 Ubuntu: 有提供,但冻结在发布时的版本
  • 手动安装: 需要 Rust 工具链,或手动管理二进制文件及其补全
  • deb.griffo.io: 最新版本,自动更新

📦 软件包构建仓库

Ubuntu 软件包在此 GitHub 仓库中自动构建和维护:

🔗 相关软件包

deb.griffo.io 还提供:

🎯 适合: 在大型代码库中搜索的开发者、希望 grep 默认遵循 .gitignore 的用户、调用 rg 的编辑器与工具链配置,以及在意大型目录树搜索速度的用户。

📦 本仓库最近发布

❓ 常见问题

ripgrep 在官方 Ubuntu 软件源中吗?

在,但官方 Ubuntu 源只提供 ripgrep 15.1.0,而本仓库提供 ripgrep 15.2.0,每次上游发布后数小时内重新构建。

如何在 Ubuntu 上安装最新版 ripgrep?

按上方说明一次性添加 deb.griffo.io 仓库,然后运行:sudo apt install ripgrep。之后通过常规的 sudo apt upgrade 获取新版本。

软件包是否有签名?如何构建?

每个软件包都使用仓库的 GPG 密钥(EA0F721D231FDD3A0A17B9AC7808B4DD62C41256)签名,并基于上游发布在公开的 GitHub 仓库中构建,任何人都可以审查。

支持哪些 Ubuntu 版本?

Ubuntu 22.04 Jammy、24.04 Noble、25.10 Questing 和 26.04 Resolute。