RexCode logo 瑞碼工坊 RexCode

Mac 上最快的全文搜尋 GUI — ripgrep 視覺化工具 2026 完整評測

ripgrep 是目前最快的命令列全文搜尋工具——它用 Rust 寫成,在官方 benchmark 中比傳統 grepag(The Silver Searcher)快 2–10 倍,原因在於它結合了有限狀態自動機正則引擎、記憶體映射檔案(mmap)和多核心平行目錄走訪。對開發者來說,在十萬個檔案裡搜尋一個字串的等待時間可以從幾秒縮短到不到一秒。

問題是:ripgrep 本身是純命令列工具,沒有視覺化介面。每次搜尋要開 Terminal、打指令、在密密麻麻的輸出裡找到你要的那一行——對習慣 GUI 工作流的人來說,這個門檻讓 ripgrep 的速度優勢打了折扣。

本文比較 macOS 上幾種「把 ripgrep 或類似引擎包進 GUI」的方案:Lode Search、Terminal ripgrep、HoudahSpot、EasyFind、以及 VS Code 的內建搜尋,幫你找到最適合自己情境的組合。


快速比較表

工具 搜尋速度 ripgrep 驅動 Apple Silicon 原生 副檔名篩選 Regex 支援 結果預覽(行號 + 上下文) 價格
Lode Search ⚡⚡⚡ 極快 ✅ 是 ✅ 原生 ✅ 有 ✅ 完整 regex ✅ 檔案 / 行 / 上下文 免費
Terminal rg ⚡⚡⚡ 極快 ✅ 是 ✅ 原生 --type flag ✅ 完整 regex -C 上下文行 免費
VS Code 搜尋 ⚡⚡ 快 ✅ 是(內建) ✅ 原生 ✅ include/exclude glob ✅ 有 ✅ 有 免費
HoudahSpot ⚡ 快(依 Spotlight 索引) ❌ Spotlight ✅ 原生 ✅ 有 ⚠️ 有限 ⚠️ 僅檔名列表 付費
EasyFind ⚡ 中等 ❌ 自有引擎 ✅ 原生 ✅ 有 ✅ Regex ⚠️ 僅檔名列表 免費

速度說明:Lode Search 和 Terminal rg 使用相同的 ripgrep 引擎,速度基本等同;VS Code 也使用 ripgrep 但在大型 workspace 初始化時有額外開銷;HoudahSpot 走 Spotlight 索引(預建好的),搜尋啟動快但受限於索引內容。


Lode Search 深度介紹

Lode 是一款 macOS 原生的多功能檔案工具,以 Tauri 2 + Rust 打造,其中的 Search 模式直接以 ripgrep 作為後端引擎。換句話說,你在 Lode 裡做的搜尋,速度和 Terminal 的 rg 指令一樣快——但結果呈現在一個視覺化介面裡,可以直接點擊跳到檔案內容或 Diff 視圖。

如何使用 Lode Search 模式

Step 1:下載並安裝 Lode

前往 https://github.com/rex4ssd/lode-releases/releases/latest 下載最新版,安裝後開啟(macOS 12+ 支援,Apple Silicon 原生執行)。

Step 2:切換到 Search 模式

在 Lode 主畫面點選 Search 模式(或從左側工具列選擇)。

Step 3:設定搜尋根目錄

在頂部的 Root 欄位輸入目錄路徑,或直接把資料夾從 Finder 拖進去。例如 /Users/yourname/Documents/myproject

Step 4:輸入搜尋條件

Step 5:瀏覽結果

結果以檔案 → 行號 → 該行內容的三層結構展示,比對字串高亮標出。點擊任一結果可直接在 Lode 的 Viewer 模式開啟對應檔案,或切換到 File Compare 做進一步比對——這正是 Lode 和純 Terminal 搜尋的最大差異:搜尋結果和其他工具是整合在一起的,不需要在多個視窗之間複製貼上路徑。

Lode Search 適合的使用情境


Terminal ripgrep:進階指令指南

如果你已經習慣 Terminal 工作流,直接用 rg 指令往往是最快的方式。以下是幾個最實用的 ripgrep 用法:

安裝

brew install ripgrep

實用指令範例

基本搜尋:

rg "TODO" ~/Documents/myproject

忽略大小寫(-i):

rg -i "error" ~/Documents/logs

只搜尋特定檔案類型(--type-t):

rg "fn main" --type rust ~/Documents/myproject
# 等同於
rg "fn main" -t rust ~/Documents/myproject

支援的類型:pyjstsrustgojsonmd 等,執行 rg --type-list 查看全部。

限定副檔名 glob(-g):

rg "import" -g "*.{ts,tsx}" ~/Documents/frontend

顯示上下文行(-C):

rg -C 3 "panic!" ~/Documents/myproject
# -C 3 = 每個符合行的上下 3 行都顯示

只顯示符合的檔案路徑(-l):

rg -l "deprecated" ~/Documents/myproject

統計每個檔案的符合次數(-c):

rg -c "console.log" ~/Documents/frontend

搜尋並排除特定目錄:

rg "API_KEY" --glob '!node_modules' --glob '!.git' ~/Documents/myproject

正則:找所有 email 地址:

rg "[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}" ~/Documents

ripgrep 預設自動忽略 .gitignore 裡的路徑和 node_modules,所以多數情況下不需要額外排除。更多指令細節請參考 ripgrep GitHub


HoudahSpot 與 EasyFind:Spotlight 流派

HoudahSpot 和 EasyFind 使用的是完全不同的搜尋哲學——它們不做即時的全文掃描,而是查詢 macOS Spotlight 預建的索引

HoudahSpot

HoudahSpot 是 Spotlight 的進階 GUI 前端,強項在於多條件組合搜尋:你可以設定「檔名包含 X,且修改時間在最近 7 天,且副檔名是 .pdf,且大小大於 1MB」這樣的複合條件,然後在 Finder 一般搜尋辦不到的地方找到東西。

但它的侷限也很明顯:Spotlight 索引不包含所有檔案類型,node_modules、隱藏目錄、以及 Spotlight 故意跳過的目錄都不在其中。如果你要在原始碼裡找 fn handle_error,HoudahSpot 找不到——因為 Spotlight 不索引那些內容。

適合情境:找文件、照片、PDF;依屬性(日期、大小、標籤)篩選 Finder 結果;處理 Office / iWork 文件內的文字搜尋。

EasyFind

EasyFind 是 DEVONtechnologies 出的免費工具,不依賴 Spotlight,而是真正走訪磁碟。它支援 regex、可搜尋隱藏檔、可搜尋套件內容——這是它比 HoudahSpot 靈活的地方。但速度上,它不使用 ripgrep,走訪速度比 rg 慢不少,在大型目錄(幾萬個檔案以上)時感受明顯。

適合情境:找系統隱藏檔、臨時搜尋不在 Spotlight 索引內的檔案、不想裝 Homebrew 的使用者。


VS Code 搜尋

值得一提的是,VS Code 的全域搜尋(⌘⇧F)本身也是由 ripgrep 驅動的,所以如果你已經在 VS Code 裡工作,它的搜尋速度相當快,也支援 regex 和 include/exclude glob。

VS Code 搜尋的主要侷限是必須在 workspace 上下文裡——你要先開一個資料夾作為 workspace,才能搜尋其中的內容。對「臨時想搜尋一個不在目前 workspace 的目錄」這種需求,每次都要重新開一個 window 或改 workspace,有點麻煩。Lode Search 沒有 workspace 概念,直接指定根目錄就搜,更適合工具型的即用即走場景。


Rex 的實際使用心得

我的日常開發機是 Mac Studio M1,主要在寫 Rust(Lode 後端)和 Python(自動化腳本)。我用 Lode Search 最多的場景是:掃 Cargo 的 build output 找編譯警告、在 src-tauri/src 底下用 regex 確認某個 trait 被哪些模組 impl、或是在多個版本的設定檔裡找某個 key 是不是哪裡拼錯了。

以前我的習慣是直接在 Terminal 跑 rg,輸出看起來沒問題,但要繼續深挖——比如想把某個搜尋結果跟另一個版本的同一個檔案做 diff——我就要把路徑複製出來再另外打開。Lode 讓我可以直接在搜尋結果上點一下,跳到 File Compare 或 Viewer,省去了那段「複製路徑 → 切視窗 → 再開」的摩擦。

另一個我很在意的點是整合性:在掃 Rust 原始碼的時候,搜尋和 diff 是同一個工具,不需要在三個不同視窗之間跳來跳去。對我來說,這比「搜尋功能多強」更實際——工作流順不順才是每天用不用得爽的關鍵


FAQ

Q:Mac 上有 ripgrep 的 GUI 介面嗎?

有。Lode Search 是目前 macOS 上少數直接以 ripgrep 為後端的 GUI 工具,搜尋速度和 Terminal rg 指令相同,但結果呈現在視覺化介面,可點擊開啟對應檔案或 diff 視圖。VS Code 的全域搜尋也使用 ripgrep,但需要在 workspace 上下文內操作。

Q:ripgrep 比 Mac 的 grep 快多少?

在實際 benchmark 中,ripgrep 在中大型 repo(幾千到幾十萬個檔案)的搜尋速度通常比 macOS 內建的 grep 快 3–10 倍。主要原因是 ripgrep 使用記憶體映射檔案(比傳統 read() 快)、多核心平行走訪目錄、以及比 POSIX regex 快得多的有限狀態自動機正則引擎(Aho-Corasick / RE2)。在 Apple Silicon Mac 上效果尤其明顯,因為 Rust 二進位完全針對 arm64 編譯。

Q:Lode 支援 regex 搜尋嗎?

支援。Lode Search 模式直接繼承 ripgrep 的完整 regex 能力,包含 lookahead、non-greedy 量詞、character class、word boundary(\b)等。和在 Terminal 跑 rg 填的 pattern 語法完全相同,無需學習新語法。

Q:Lode 是免費的嗎?

是的。Lode 目前完全免費,可以從 GitHub Releases 直接下載,不需要帳號或授權碼。要求 macOS 12 以上,Apple Silicon 原生。

🔨
本文介紹的工具:Lode

原生 macOS 工作台,整合 Folder Diff、File Diff、Binary Diff、全文搜尋,一個 App 搞定。