複数のファイルの中から、特定の文字列を検索したい場合ってありませんか。
この記事では、そんな場合に一回で検索する方法をご紹介します。
この記事の概要
- 複数ファイルの中を一発で検索する方法とは
- いろいろな検索方法パターンもコレで解決
一度知っておけば今後も活用間違いなし。
知っているか否かで大違いです。
Macでファイル内の文字列を検索する方法【効率化】
検索する方法としてはざっくり2つ。
- アプリケーションをインストールし、その検索機能を使う
- Mac標準搭載のターミナルを利用し、grepコマンドの実行を行う
①のアプリケーションをインストールは、やはりアプリケーションによって可能な検索パターンも様々です。 今回は一般的な検索パターンを搭載している「Sublime Text」を紹介したいと思います。
Sublime Textを利用したファイル内検索
手元のPCにインストールされていない場合には、まずはインストールしてもらう必要があります。
インストールの手順などは、詳しい手順が記載されているページがネット上にたくさんありますので、そちらを確認いただければと思います。
インストールが完了したら、「検索 – ファイル内検索」を 選択します。
すると、次のような画面になりますので、検索文字列、検索したい場所の指定を行います。
各パラメタはそれぞれ次の通りです。
- ①:正規表現で検索する or しない
- ②:大文字と小文字を区別する or しない
- ③:完全一致 or 部分一致
- ④:検索に該当した行のみ表示させる or 該当した行の前後(3行)も表示させる
※前後の行数は指定できません。 - ⑤:検索結果を新規タブとして表示させる or 画面下に検索結果欄として表示させる
アプリケーションをインストールするのは手間ですが、一度済ませてしまえば、後は楽チンだと思います。
ターミナルを利用したファイル内検索
こちらは、Sublime Textと異なり、検索条件や、検索場所を指定しコマンドベースで検索を行う必要があります。
コマンド?って聞くと抵抗がある方がいらっしゃるかもしれませんが、
おまじないと思ってもらえれば大丈夫です。(*´∀`*)
次に紹介するコマンドをターミナルに入力すればOK。
ターミナルの起動
ターミナル.appを開きます。
[Macintosh HD > アプリケーション > ユーティリティ > ターミナル.app]こんな画面です。↓
コマンドの入力
検索するパターンを色々と切り替えることができます。
色々と組み合わせることで、Sublime Textよりも高度な検索が可能となります。
これを覚えれば大丈夫のおまじない
おまじない:grep -r [検索文字列] [検索フォルダ]
指定したフォルダ配下をすべて検索
例:grep -r あいう /Users/test
行の数のみ
grep -rc あいう /Users/test
大文字小文字を区別しない
grep -ri あいう /Users/test
一致した行の行番号を表示
grep -rn あいう /Users/test
一致した行の前後3行も表示
grep -r3 あいう /Users/test
これらのコマンドをターミナル画面の”$”の右側に入力すればOKです。
最後に:ファイル内の文字列を検索は、一度覚えれば簡単
最初だけアプリケーションをインストールしたり、コマンドなどのやりかたを覚えたりする必要がありますが、一度覚えてしまえば後は楽だと思います。
検索対象のファイルが増えれば増えるほど、効果はバツグンですよ!!!