grep 、 egrep 、 fgrep 、 rgrep 、 pgrep - Unixライクなオペレーティングシステムのコマンドで、パターンに一致する行を出力します。 grepは指定されたPATTERNとの一致を含む行について、指定された入力FILEを検索します。デフォルトでは、一致する行が出力されます。さらに、変種プログラムegrep 、 fgrep 、およびrgrepは、それぞれgrep -E 、 grep -F 、およびgrep -rと同じです。これらのバリアントは廃止予定ですが、下位互換性のために提供されています。
grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN]... [-f FILE]... [FILE...]
シンボル | 詳細基本正規表現(BRE) |
---|---|
^ | サーカンフレックスは、行の先頭に一致するために使用されます。 |
$ | 行の終わりに一致するために使用されます。 |
. | 改行以外の文字にマッチします。 |
[] | 角括弧の中の一文字にマッチします。 ^ 内部がある場合は、括弧内の文字以外は一致します。 |
\ | 英数字以外の文字のいずれかが引用される前に。 |
* | シンボルは前の文字または部分式と0回、1回以上一致します。 |
\1 | 後方参照1-9は、対応するグループによって正確なテキストと一致する。 |
\{m,n\} | 上記の要素を少なくともm回、 n回以下と一致させます。 |
\| | foo\|bar fooまたはbarと一致します。 |
\? | {0,1}の略 |
\+ | ( {1、}の短縮形)は、先行する文字または部分表現と最大で1回、または少なくとも1回一致します。 |
\n | 改行にマッチし、 \t はタブに一致します。 |
\w | 任意の単語構成要素に一致し、\ Wは単語構成要素でない文字に一致します。 |
\<\> | 空の文字列は単語の先頭または末尾にのみ一致する |
\b | どちらかに一致し、 \ Bは\ bと一致します。 |
シンボル | 詳細拡張正規表現(ERE) |
^ | 初めにのみ一致する |
$ | 行の最後でのみ一致します。 |
. | 任意の文字(または改行を除く任意の文字)に一致します。 |
[…] | 角括弧(文字セット)内にリストされている任意の文字にマッチします。最初の^を追加し、BREのような範囲の作業を行います(上記参照)。 |
(…) | *または\ DIGIT置換で使用するための構文グループ。 |
\| | 交替のために: foo | bar fooまたはbar 一致します。 |
* | 直前の文字または部分式に何度もマッチします:0,1回以上 |
+ | 1文字前の文字と一致します。 |
? | 先行する文字と0または1回一致します。 |
\ | 円記号が英数字でない場合、バックスラッシュは次の文字を引用符で囲みます。 |
{m,n} | mとnの間の前の文字または部分式に一致します(いくつかの実装ではありません)。 nまたはmは省略することができ、 {m} は正確にmを意味します |
fgrepは、「固定文字列の正規表現の印刷」を表します。 fgrepはgrep -F
と同じです。このコマンドはより速いgrepであり、grepとして動作しますが、正規表現メタ文字は特別であると認識しません。複雑なパターンではなく単純な文字列しか処理しないため、検索がより速く完了します。
pgrepは、 "Process-ID Global Regular Expressions Print"の略語です。 pgrepは、現在実行中のプロセスを調べ、選択基準に一致するプロセスIDをstdoutに一覧表示します。 pgrepは、プロセスのプロセスID整数を知りたいときに便利です。
グレープ | egrep(grep -E) | fgrep(grep -F) | pgrep |
---|---|---|---|
基本正規表現(BRE) | 拡張正規表現(ERE) | 文字列のみを検索する | 名前でプロセスを検索する |
詳細および参照情報については、次のリンクをご利用ください。
grep、egrepとfgrepの違いは何ですか? UnixとLinuxのStackExchange