ファイルからパターンを検索します。
grep [ -E | -F ] [ -i ] [ -h ] [ -H ] [ -L ] [ -r | -R ] [ -s ] [ -v ] [ -w ] [ -x ] [ -y ] [ [ [ -b ] [ -n ] ] | [ -c | -l | -q ] ] [ -p [ Separator ] ] { [ -e PatternList ... ] [ -f PatternFile ... ] | PatternList ... } [ File ... ]
grep コマンドは、Pattern パラメーターで指定されたパターンを検索し、一致する各行を標準出力に書き出します。パターンは、ed コマンドまたは egrep コマンドのスタイルの正規表現に限定されます。 grep コマンドは、コンパクトな決定論的でないアルゴリズムを使います。
File パラメーター内で複数の名前を指定すると、grep コマンドは一致した行が入っているファイルの名前を表示します。シェルに対して特別な意味を持つ文字 ($、*、[、|、^、(、)、\) は、 Pattern パラメーター内では引用符で囲まなければなりません。 Pattern パラメーターが単純な文字列でない場合、通常はパターン全体を単一引用符で囲まなければなりません。 [a-z] などの式において、- (負符号) cml は現在の照合シーケンスに従った 範囲を意味します。照合シーケンスは文字範囲内で使用する等価クラスを定義できます。ファイルを指定しなければ、grep は標準入力を想定します。
注:
- 予測できない結果を生ずるので、grep コマンドをスペシャル・ファイル上で実行するのは避けてください。
- 入力行には、NULL 文字を使用しないでください。
- 入力ファイルの終わりには、改行文字を付けてください。
- 改行文字は、正規表現で一致させることはできません。
- 複数のフラグを同時に指定できますが、 フラグの中には他のフラグをオーバーライドしてしまうものがあります。例えば、-l オプションは、他のすべてのフラグよりも優先されます。 -E フラグと -F フラグを指定すると、最後に指定したフラグが優先されます。
このコマンドは次の終了値を戻します。
| 0 | 一致が見つかりました。 |
| 1 | 一致が見つかりませんでした。 |
| >1 | 構文エラーが見つかったか、(一致が見つかったとしても) ファイルにアクセスできませんでした。 |
grep "^[a-zA-Z]" pgm.s
これにより、pgm.s 内から英文字で始まるすべての行が表示されます。
grep \\$ test2
シェルが grep コマンドに、 \$ (1 つのバックスラッシュとドル記号) を渡すようにするには、 \\ (2 つのバックスラッシュ) 文字が必要です。 \ (1 つのバックスラッシュ) は、 後ろに続く文字 (この例では $) が正規表現の文字ではなく、通常の文字であることを grep コマンドに伝えます。バックスラッシュなどのエスケープ文字の使用を避けるには、fgrep コマンドを使用します。
grep -R IBM /tmpまたは
grep -r -H IBM /tmp
grep -r IBM /tmpまたは
grep -R -L IBM /tmp
| /usr/bin/grep | grep コマンドが入っています。 |