はじめに
Grep コマンドの備忘録です。完全に個人用です。
内容
- 再帰的検索(
-rオプション:カレントディレクトリ以下のすべてのフォルダ内も捜査対象とする)
$ grep -r "keyword" ./
補足:ダブルクォーテーション「"」は検索文字列に含まない。"で必ず括る必要はない。ただし、空白を含む文字列を検索する場合はエスケープ表現で\(半角スペース) と書くよりも検索文字列を"で括った方が可読性も高まりますし、何より入力が楽でしょう。
- カレントディレクトリ以下で
cまたはhファイルの中で文字列"keywords"を含むファイルの検索(-lオプションによってファイル名までの相対パスだけをリストアップする)
$ grep -rl "keyword" ./ --include={*.c,*h}
補足:複数指定するときは中括弧でくくり、「,」で区切ること
- 指定パス以下で
htmlファイル以外で文字列"keywords"を含むファイルの検索(-nオプションで該当箇所の行番号を表示する)
$ grep -rn "keyword" ./ --exclude=*.html
補足:単一のファイル拡張子を検索する場合は中括弧を用いないこと
- カレントディレクトリ以下のファイル名"file"を検索する
$ find ./ file -ls
補足:末尾にlsオプションを付すことで、マッチしたファイルをリスト表示(コマンドls -l)してくれる