rg コマンドをmacで使う|入れ方・基本の打ち方と、出てこないときの見直し方
rg コマンドは、ripgrep という検索ツールの実行ファイル名です。macOS には最初から入っていないので、Macで使うには Homebrew で brew install ripgrep を打って入れます。入れたあとは rg 探したい語 と打つだけで、今いるフォルダの下にあるファイルの中身を、すべての階層までたどって探します。grep と違って -r を付ける必要はありません。そのかわり、.gitignore に書かれたもの、名前が「.」で始まる隠しファイル、画像などのバイナリは、何も指定しないと探す対象から外れます。「あるはずなのに出てこない」という相談の大半はこの既定値が原因です。この記事では、入れ方と基本の打ち方に加えて、出てこないときにどこを見直せばよいか、Macの日本語ファイル名で起きる取りこぼし、find や mdfind との使い分けまでを、手元のMacで実際に打って確かめた結果とともに整理します。
macに rg が入っているかを確かめて、入れる
まず、すでに入っているかを確かめます。ターミナルで which rg と打ち、パスが返れば入っています。何も返らなければ未導入です。macOS 27.0.1 の /usr/bin を確認したところ、標準で入っている検索系のコマンドは find、locate、mdfind、grep で、rg はありませんでした。
入れ方は Homebrew が一般的です。
brew install ripgrep
rg --version
パッケージ名は ripgrep、入ったあとに打つ名前は rg です。この2つが違うことは、初めての人がつまずきやすい点です。Homebrew の公式の一覧(formulae.brew.sh)では、2026年10月8日時点の安定版は 15.2.0 でした。ライセンスは Unlicense で、無料で使えます。Rust の開発環境を入れている場合は cargo install ripgrep でも入りますが、Macで普段使いするだけなら Homebrew で足ります。
最近は、AIのコーディング用エージェントを入れたことで rg が手元にある、という人も増えています。Claude Code は自前の ripgrep を同梱しており、公式のトラブルシューティングには、検索やファイル指定がうまく働かないときの対処として「Macなら brew install ripgrep で入れ、環境変数 USE_BUILTIN_RIPGREP を 0 にして手元の rg を使わせる」という手順が書かれています。切り替わったかどうかは claude doctor の Search の行で確かめられる、とも案内されています。エージェントの検索が空振りするときにも、rg の素性を知っておくと原因に近づけます。手順の全文は Claude Code のトラブルシューティング にあります。
基本の打ち方は5つ覚えれば足りる
rg の書き方は「rg、オプション、探す語、場所」の順です。場所を省くと今いるフォルダ以下が対象になります。
rg 請求書 # 中身に「請求書」を含む行を、今いるフォルダ以下から探す
rg -i invoice ~/Documents # 大文字小文字を区別しない
rg -l 請求書 # 当たったファイルの名前だけを出す
rg -t md 見積 # Markdownだけを対象にする
rg -C 2 TODO # 当たった行の前後2行も出す
使用頻度が高いのはこの5つです。補足すると、-S を付けると「小文字だけで打ったときは大文字小文字を無視し、大文字が1つでも入っていれば区別する」という動きになります。手元で rg -S hello と打つと、Hello を含む行も当たりました。-F は探す語を正規表現として解釈せず、そのままの文字列として扱います。ドットやカッコを含む語を探すときに付けます。
ファイルの種類の指定に使える名前は rg --type-list で一覧できます。手元の版では md と markdown が同じ扱いで、.md や .mdx などをまとめて指します。ts を指定すると .ts と .tsx の両方が対象になります。
中身ではなくファイル名で探したいときは、rg --files で対象のファイル一覧を出し、-g で絞ります。
rg --files -g '*見積*'
rg --files --iglob '*readme*'
-g は大文字小文字を区別します。手元で rg --files -g '*hellocase*' と打つと HelloCase.md は出ず、--iglob に変えると出ました。名前の大文字小文字が曖昧なときは --iglob を使います。
-g は除外にも使えます。パターンの先頭に「!」を付けると、そのパターンに合うものを外します。rg 請求書 -g '!*.log' と打てばログファイルを除いて探せます。シェルが「!」を特別な意味に解釈しないよう、パターンは引用符で囲みます。また、--max-depth 2 を付けると、指定した深さより下の階層へは降りません。ホームフォルダ全体のように広い場所で探すときは、まず浅い階層だけを見て、当たりが無ければ深さを広げる、という順番にすると待ち時間を抑えられます。
結果が多すぎるときは、rg -c 語 で「ファイルごとに何行当たったか」を先に数えると全体の見通しが立ちます。件数の多いファイルから順に開けば、どこに目的の記述が集まっているかが早く分かります。
出てこないときは3つの既定値を順に外す
rg が空で返ったとき、ファイルが本当に無いとは限りません。ripgrep の公式の説明には、次のように書かれています。
By default, ripgrep will respect gitignore rules and automatically skip hidden files/directories and binary files. (To disable all automatic filtering by default, use
rg -uuu.) 出典: github.com
既定で外れるのは、.gitignore などの無視設定に書かれたもの、隠しファイルと隠しフォルダ、バイナリの3つです。外し方は -u の数で段階的に変わります。
-u:無視設定を読まない-uu:さらに隠しファイルも対象にする-uuu:さらにバイナリも対象にする
検証用のフォルダに、通常のファイル、.hidden という隠しフォルダ、.gitignore で外した node_modules を用意して試しました。rg 請求書 は通常のファイルだけを返し、rg -uu 請求書 で隠しフォルダと node_modules の中も返るようになりました。設定ファイルを探していて見つからないときは、まず -uu を足すのが近道です。
ここで注意したいのは、.gitignore が効くのは Git の管理下にあるフォルダだけという点です。書類のフォルダのように Git と関係ない場所では無視設定は働かず、隠しファイルとバイナリだけが外れます。PDFや Word の書類の中身は、バイナリとして扱われるため既定では探せません。書類の本文まで探したい場合は、後述の mdfind のほうが向いています。
Macの日本語ファイル名で起きる取りこぼし
Macならではの落とし穴があります。濁点や半濁点を含むファイル名は、「ガ」を1文字で持つ形(NFC)と、「カ」と濁点の2文字に分けて持つ形(NFD)の2通りで保存されることがあります。見た目は同じでも、コンピュータにとっては別の文字列です。
手元の macOS 27.0.1 と rg 14.1.1 で、「ガイド」を含む名前のファイルを2つの形で作って試しました。rg --files -g '*ガイド*' で出てきたのは NFC の1つだけでした。find . -name '*ガイド*' でも結果は同じで、NFD の名前は出ませんでした。一方、中身の検索(rg 請求書)では両方のファイルが当たりました。名前の照合だけが、文字の形の違いで外れるということです。
古い外付けディスクから写したファイルや、他の環境で作られた zip を展開したファイルは、NFD の名前を持っていることがあります。名前で探して出てこないときは、濁点を含まない部分(「ガイド」なら「イ」)で絞るか、名前ではなく中身の語で探すと取りこぼしを避けられます。
find・mdfind・grep・rg の使い分け
Macで使える検索の道具は、索引を引くものと、ディスクを実際にたどるものに分かれます。性質を並べると次のとおりです。
| 道具 | 入っているか | 探し方 | 既定で外れるもの | 向いている場面 |
|---|---|---|---|---|
| mdfind | 標準 | Spotlightの索引を引く | 索引の対象外の場所 | 書類の本文やPDFを速く探す |
| find | 標準 | ディスクをたどる | なし | 名前・日付・大きさで漏れなく探す |
| grep -r | 標準 | ディスクをたどる | なし | 追加で入れずに中身を探す |
| rg | 追加で入れる | ディスクをたどる | 無視設定・隠し・バイナリ | コードやテキストの中身を速く探す |
選び方の目安は3つです。書類の本文を探すなら mdfind、名前や更新日で漏れなく探すなら find、テキストやコードの中身を繰り返し探すなら rg です。macOS 標準の grep は BSD 版(手元では 2.6.0-FreeBSD)で、隠しファイルもバイナリも含めてすべてをたどるので、node_modules のような大きなフォルダを抱えた場所では結果が膨らみます。rg の既定はこの膨らみを抑えるためのものなので、外れていることを知ったうえで使えば、両者を取り違えずに済みます。
書類の本文を探す場面では、mdfind -onlyin ~/Documents 請求書 のように範囲を指定すると、Spotlight の索引から一瞬で候補が返ります。ただし、システム設定の Spotlight で検索の対象から外したフォルダや、索引作成が止まっている外付けディスクは結果に出ません。mdfind が空で返ったときは、場所を絞って find か rg でたどり直すと、索引の死角かどうかを切り分けられます。
rg ほげ *.txt のように対象を指定して打つと、当たった部分に色が付き、grep より読みやすいという評価もあります。
ripgrep(コマンド rg)は多数のファイルを一括検索するためのツールです。昔からある grep というツールの強化版です。 出典: okumuralab.org
いつも同じオプションを付けたいときは、環境変数 RIPGREP_CONFIG_PATH に設定ファイルの場所を書き、そのファイルに1行に1つずつオプションを並べます。たとえば --smart-case を書いておけば、毎回 -S を打つ必要がなくなります。
見つけたあとの受け渡しで手が止まる
rg で当たりを付けたあとの作業は、多くの場合ターミナルの外で続きます。Finder でそのフォルダを開く、中身を確かめる、AIに渡す。ここで窓を行き来するたびに、パスのコピーや cd の打ち直しが発生します。
ターミナルの中で完結させるなら、rg -l 語 | head で候補を絞り、open -R ファイル名 で Finder 上の場所を表示する、という流れが使えます。open -R はファイルを開かずに、そのファイルを選んだ状態で Finder の窓を出すコマンドです。
逆に、フォルダの画面を中心に作業したい人には、フォルダとターミナルが同じ窓にあるファイル管理アプリという選択肢もあります。開いているフォルダに1つずつターミナルが付いていて、フォルダを切り替えると作業する場所も一緒に切り替わるので、cd を打たずにそのまま rg を走らせられます。保存した検索条件を「スマートフォルダ」として何度でも呼び出す機能や、よく打つコマンドを右クリックの項目に登録する機能もあり、rg のよく使う形を登録しておく使い方もできます。機能の全体はできることにまとまっており、Mac単体で使う分には0円で期限もないことが料金のページで案内されています。Finder や他の道具との違いは他のファイル管理との比較で確かめられます。
rg そのものは、どの窓から打っても同じように動きます。大切なのは、既定で何が外れるかを知っておくことと、空で返ったときに -uu、名前の形、検索の道具の順に疑っていくことです。この順番を持っておけば、Macでのファイル探しで手が止まる時間を減らせます。
よくある質問
rg コマンドはmacに最初から入っていますか?
入っていません。macOS に標準で入っている検索系のコマンドは find、locate、mdfind、grep です。rg を使うには Homebrew で brew install ripgrep を打って入れます。入れたあと which rg でパスが返れば使える状態です。パッケージ名は ripgrep、打つ名前は rg なので、取り違えに気をつけてください。
rg で探しているのに、あるはずのファイルが出てきません。なぜですか?
rg は既定で、.gitignore などの無視設定に書かれたもの、隠しファイルと隠しフォルダ、バイナリを探す対象から外します。-u で無視設定を、-uu でさらに隠しファイルを、-uuu でさらにバイナリを対象に戻せます。設定ファイルが見つからないときは、まず -uu を付けて打ち直すのが近道です。
rg でファイル名を探すにはどう打ちますか?
rg --files で対象のファイル一覧を出し、-g でパターンを指定します。たとえば rg --files -g '見積' です。-g は大文字小文字を区別するので、区別したくないときは --iglob を使います。濁点を含む日本語の名前で出てこない場合は、濁点を含まない部分で絞ると取りこぼしを避けられます。
grep と rg はどちらを使えばよいですか?
追加で何も入れずに使いたいなら標準の grep、テキストやコードの中身を繰り返し探すなら rg が向いています。rg は既定で全階層をたどり、無視設定や隠しファイルを外すので、大きなフォルダでも結果が読みやすくなります。PDFや書類の本文を探すなら、Spotlight の索引を使う mdfind のほうが適しています。