目的
- 特定の文字列が記載されているソースコードのファイルを検索するコマンドを紹介する
実施環境
- ハードウェア環境
項目 | 情報 |
---|---|
OS | macOS Catalina(10.15.5) |
ハードウェア | MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports) |
プロセッサ | 2 GHz クアッドコアIntel Core i5 |
メモリ | 32 GB 3733 MHz LPDDR4 |
グラフィックス | Intel Iris Plus Graphics 1536 MB |
コマンドの紹介
-
ソースコードのファイルがあるディレクトリに移動して下記コマンドを実行する。
grep -ilr "検索文字列" ./*
-
上記のコマンドを実行すると「検索したい文字列」が記載されているファイル名が出力される。
コマンドとオプションの簡単な説明
- コマンド
grep
- ファイルに対して実行すると条件に合致した行を出力する。
- 条件には正規表現を使うことができる。
- よく文字列検索やログの検索に使用する。
- 大文字と小文字を区別して検索する。
-
$ grep "検索文字列"
と実行することで検索文字列を次含む行が出力される。
- オプション
-i
または--ignore-case
- 大文字、小文字を区別せずに検索を行う。
- オプション
-l
または--files-with-matches
- 検索にヒットした行を含むファイル名のみを出力する。
- オプション
-r
または-R
または--recursive
- 再起的に検索する。
-
./*
- 検索ディレクトリの指定をしている。
-
.
がカレントディレクトリを指す。 -
/*
がディレクトリ直下全てを指す。 -
./*
で「カレントディレクトリ直下全て」を指定している。
-
$ grep -ilr "検索し文字列" ./*
- 上記を踏まえると、「検索対象ディレクトリを本ディレクトリ直下の全てとして、検索文字列を検索する。検索文字列の大文字小文字を区別せず、ヒットした行があるファイル名を出力して、かつ検索は対象ファイルが存在する限り再起的に検索する」ということになる。