【コマンド詳細】grepの使い方とオプションまとめ

  • URLをコピーしました!
目次

Linuxのgrepコマンドについて

grepコマンドは、テキストファイルや標準出力から特定のパターンを検索するためのコマンドです。
大量のログファイルから特定の文字列を抽出したり、
特定のパターンに一致する行のみを表示したりする際に非常に便利です。
grepコマンドはLinux管理やプログラミング作業で頻繁に利用されます。

オプション一覧

オプション説明
-i大文字と小文字を区別せずに検索を行います。
-v指定したパターンに一致しない行を表示します。
-r または -Rディレクトリを再帰的に検索します。
-lパターンに一致するファイル名のみを表示します。
-n一致した行の行番号も表示します。
-cパターンに一致する行数を表示します。
-A [数値]一致した行と、その後の指定行数も表示します。
-B [数値]一致した行と、その前の指定行数も表示します。
-C [数値]一致した行と、その前後の指定行数も表示します。
--color一致した部分を色付けして表示します。
--helpgrepコマンドのヘルプを表示します。

各オプションの詳細と使用例

基本的なgrepコマンド

ファイル内の特定の文字列を検索します。

使用例

$ grep "error" logfile.txt

表示結果logfile.txt内で”error”を含む行が表示されます。

-iオプション

大文字と小文字を区別せずに検索を行います。

使用例

$ grep -i "error" logfile.txt

表示結果: “error”や”Error”など、大小文字にかかわらず一致する行が表示されます。

-vオプション

指定したパターンに一致しない行を表示します。

使用例

$ grep -v "error" logfile.txt

表示結果: “error”を含まない行のみが表示されます。

-r または -R オプション

ディレクトリを再帰的に検索し、パターンに一致する行を表示します。

使用例

$ grep -r "error" /var/log/

表示結果/var/logディレクトリ内のすべてのファイルに対して、”error”を含む行が表示されます。

-lオプション

パターンに一致する行を含むファイル名のみを表示します。

使用例

$ grep -l "error" /var/log/*

表示結果: “error”を含むファイルの名前が一覧で表示されます。

-nオプション

一致した行の行番号も表示します。

使用例

$ grep -n "error" logfile.txt

表示結果: “error”を含む行と、その行番号が表示されます。

-cオプション

パターンに一致する行の総数を表示します。

使用例

$ grep -c "error" logfile.txt

表示結果: “logfile.txt”内で”error”を含む行数が表示されます。

-Aオプション

一致した行と、その後の指定行数を表示します。

使用例

$ grep -A 3 "error" logfile.txt

表示結果: “error”を含む行と、その後の3行が表示されます。

-Bオプション

一致した行と、その前の指定行数を表示します。

使用例

$ grep -B 2 "error" logfile.txt

表示結果: “error”を含む行と、その前の2行が表示されます。

-Cオプション

一致した行と、その前後の指定行数を表示します。

使用例

$ grep -C 2 "error" logfile.txt

表示結果: “error”を含む行と、その前後2行が表示されます。

--colorオプション

一致した部分を色付きで表示します。

使用例

$ grep --color "error" logfile.txt

表示結果: “error”に一致する部分が色付きで強調表示され、視認性が向上します。

注意点

  • grepは正規表現を使って高度なパターン検索が可能です。ただし、エスケープ文字などが必要になる場合もあります。
  • grepの正規表現は基本的にはPOSIX準拠ですが、GNUバージョンのgrepでは拡張正規表現(-Eオプション)も使用可能です。
    目次