macOS・Linux・Windowsでripgrep (rg)をインストール:正規表現検索と.gitignore
3 OSでrgを入れ、最初の正規表現検索を実行し、.gitignoreの除外を理解する。
コードベースを素早く探すなら ripgrep(rg)が grep -r より日常向きです。既定で .gitignore を尊重し、並列も速い。hereink の読者向けに macOS・Linux・Windows の公式インストール経路をまとめます。
検索語はripgrepのインストールと正規表現検索。プロジェクトルートで最初の rg を実行し、無視ファイルがどう除外されるか分かる状態にします。
ripgrepが解くこと
grepの罠を減らす
grep -r は node_modules や dist、.git まで踏み込みがち。rg は既定で .gitignore、.ignore、グローバル無視を読み、シンボル探しに向きます。
POSIXを全部覚えなくてよい
Rust 正規表現で \d、グループ、行頭行末など。リテラル、大小無視、型フィルタで大半の初日タスクは足ります。
端末で確認:
rg --version。公式:github.com/BurntSushi/ripgrep。
3 OSで rg を入れる
- 1macOS(Homebrew)
brew install ripgrep。確認はwhich rgとrg --version。Apple Silicon と Intel で同じ式。 - 2Linux(ディストロ)
Debian/Ubuntu:
sudo apt update && sudo apt install ripgrep。Fedora:sudo dnf install ripgrep。Arch:sudo pacman -S ripgrep。古い場合は GitHub Releases の tarball を展開しPATHにrgを置く。 - 3Windows
PowerShell 等で
winget install BurntSushi.ripgrep.MSVC、または MSI。Scoop:scoop install ripgrep。新しいシェルでrg --version。 - 4任意:Rust
Rust 済みなら
cargo install ripgrep。コンパイルは遅いがパッケージがない環境向き。
基本の正規表現検索
rg "useState" src/
rg -i "error" .
rg "^function\s+\w+" --type js
rg -l "TODO" .
rg -n -C 2 "api/v1" リポジトリルートから rg は上に .git を探し、境界と無視規則を適用します。
.gitignore と例外
| 目的 | コマンド | メモ |
|---|---|---|
| 既定 | rg pattern | .gitignore のパスをスキップ |
| 無視も検索 | rg --no-ignore pattern | 生成物やローカル設定向け。出力多い |
| 追加除外 | rg --glob '!*.min.js' foo | 無視規則の上にフィルタ |
| 拡張子限定 | rg -t py "def main" | --type-list で型一覧 |
- 向く
- monorepo でコンポーネント名・環境変数・TODO を探す。CI ログからファイルを辿る。
- 向かない
- 一括編集(エディタや
sd/sed)。巨大バイナリの全文索引。
rg は grep の完全代替?
いいえ。rg は無視規則付きディレクトリ検索、grep はパイプと単一ファイル向き。併用が多いです。
node_modules 内が見つからない?
node_modules は通常 .gitignore 内です。rg --no-ignore かそのフォルダ内で直接検索。遅く出力も増えます。
Windows で rg が認識されない?
インストール後に端末を開き直す。where rg。手動 zip は PATH にフォルダを追加。
検索後は一枚に揃える
端末でファイルが分かっても、設計は一枚の図で揃えやすい。短い部屋に追加スタックは不要。スペースの作り方を参照。