書式
grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]
オプション(抜粋)
パターン
- -E
- PATTERN を拡張正規表現 (ERE) として扱う。
- -G
- PATTERN を基本正規表現 (BRE) として扱う。デフォルト。
- -e PATTERN
- パターンを指定する。複数回使用できる。
- -f FILE
- FILE からパターンを読み込む。
- -i
- アルファベットの大文字と小文字を区別しない。
ファイル
- -r
- 各ディレクトリの下にあるすべてのファイルを再帰的に読み込む。シンボリックリンクは指定されたときのみ追跡する。
- -R
- 各ディレクトリの下にあるすべてのファイルを再帰的に読み込む。すべてのシンボリックリンクを追跡する。
- --include=GLOB
- GLOBにマッチするファイルのみ検索する。
出力
- -v
- マッチしない行を表示する。
- -q
- 標準出力に出力しない。
- -s, --no-messages
- ファイルが存在しないことや読み込みめないことを示すエラーメッセージを抑止する。
- -n, --line-number
- 各出力行の前に、そのファイル内の行番号を表示する。
- -A NUM
- 指定した行数分、パターンにマッチした後の行も表示する。
- -B NUM
- 指定した行数分、パターンにマッチした前の行も表示する。
- -C NUM, -NUM
- 指定した行数分、パターンにマッチした前後の行も表示する。
サンプルコード
findと組み合わせて、条件に合致するファイルにgrepを行う。
find . -name "*.exp" | xargs grep keyword
同等のことが--includeオプションで可能。
grep -r --include="*.exp" keyword ./