カテゴリ: Linuxコマンド集 更新日: 2026/04/15

grep -Cオプション|一致行の前後をまとめて表示する使い方を初心者向けに詳しく解説!

grep -Cオプション|一致行の前後をまとめて表示する
grep -Cオプション|一致行の前後をまとめて表示する

先生と生徒の会話形式で理解しよう

生徒

「Linuxでgrepを使って検索したときに、該当する行の前後も一緒に見られたら便利なのになぁと思ったんですけど、できますか?」

先生

「はい、できますよ。-Cオプションを使えば、一致した行の前後をまとめて表示することができます。」

生徒

「前も後ろも両方見られるってことですか?」

先生

「その通りです!それではgrep -Cオプションの使い方を丁寧に説明していきましょう。」

1. grepコマンドとは?

1. grepコマンドとは?
1. grepコマンドとは?

grep(グレップ)コマンドは、Linuxでテキストファイルの中から特定のキーワードを含む行を検索するための定番コマンドです。例えば、「error」という文字を含む行を調べたいときに使います。


grep error logfile.txt

このように実行すると、「error」を含む行だけが表示されます。しかし、その行の前後の文脈も見たい場合には、-Cオプションが活躍します。

2. -Cオプションとは?Contextの略で前後を表示

2. -Cオプションとは?Contextの略で前後を表示
2. -Cオプションとは?Contextの略で前後を表示

-CContext(コンテキスト)の略で、一致した行の前後を指定した行数分一緒に表示するためのオプションです。

使い方は以下のようにシンプルです。


grep -C 行数 検索文字列 ファイル名

たとえば、「ERROR」という文字列を含む行と、その前後1行ずつを表示する場合は:


grep -C 1 ERROR logfile.txt

3. grep -Cオプションの実例を見てみよう

3. grep -Cオプションの実例を見てみよう
3. grep -Cオプションの実例を見てみよう

次のようなlogfile.txtの内容があるとします:


cat logfile.txt
INFO: サーバー起動中
INFO: 認証処理開始
ERROR: ユーザー認証失敗
INFO: 再試行中
INFO: 認証成功

この中から「ERROR」が含まれる行と、その前後1行を表示したい場合、次のように実行します:


grep -C 1 ERROR logfile.txt
INFO: 認証処理開始
ERROR: ユーザー認証失敗
INFO: 再試行中

このように、前後の行も表示されるため、エラーが起きた「前の状態」や「その後の対応」を確認することができます。

4. 複数の一致があった場合の動きと「--」の意味

4. 複数の一致があった場合の動きと「--」の意味
4. 複数の一致があった場合の動きと「--」の意味

-Cオプションで検索した結果、複数の一致があると、それぞれのブロックの間に--(ハイフン2つ)が表示されます。


grep -C 1 WARNING logfile.txt
INFO: データ取得開始
WARNING: レスポンス遅延
INFO: リトライ中
--
INFO: 認証開始
WARNING: パスワード試行回数超過
INFO: ロック処理実行

この--は、どこで検索結果の区切りがあるかを示してくれるため、内容を見やすく整理してくれます。

5. 他のオプションとの違い|-Aや-Bとの比較

5. 他のオプションとの違い|-Aや-Bとの比較
5. 他のオプションとの違い|-Aや-Bとの比較

grepコマンドには、-C以外にも以下のようなオプションがあります。

  • -A 行数:Afterの略。一致行の後ろを表示
  • -B 行数:Beforeの略。一致行の前を表示
  • -C 行数:Contextの略。一致行の前後を表示

つまり、-A-Bの組み合わせを1つでできるのが-Cというわけです。

6. grep -Cの応用例|ログ解析やエラーチェックに便利

6. grep -Cの応用例|ログ解析やエラーチェックに便利
6. grep -Cの応用例|ログ解析やエラーチェックに便利

grep -Cは、特にログファイルの解析やトラブルシューティングで威力を発揮します。エラーが出た前後の処理を把握したいときや、警告が出たときの流れを知りたいときに便利です。

たとえば、次のようなログがあるとします:


cat system.log
INFO: プログラム開始
INFO: 初期化完了
WARNING: CPU使用率が高い
INFO: 通常処理実行中
ERROR: 処理中に例外発生
INFO: 後処理実行

「ERROR」が含まれる行と、その前後2行を確認したい場合は:


grep -C 2 ERROR system.log
INFO: 初期化完了
WARNING: CPU使用率が高い
INFO: 通常処理実行中
ERROR: 処理中に例外発生
INFO: 後処理実行

このように、エラーが起きる前後の処理の流れが丸ごと見えるので、原因特定や対応策を考えるのにとても役立ちます。

関連記事:
カテゴリの一覧へ
新着記事
New1
ファイル・ディレクトリ操作
stat -Lオプションの使い方を解説|シンボリックリンクをたどってファイル情報を確認しよう
New2
ファイル・ディレクトリ操作
realpath -eオプションの使い方を解説!Linuxで存在するファイルのみ絶対パスを取得する方法
New3
テキスト処理とフィルタ
tacコマンドの基本!ファイル内容を逆順に表示する方法
New4
テキスト・データ処理
awk -fオプションの使い方を完全ガイド!初心者でもわかるLinuxテキスト処理の基本
人気記事
No.1
Java&Spring記事人気No1
テキスト・データ処理
catコマンドとは?Linuxでファイル内容を表示・連結する基本
No.2
Java&Spring記事人気No2
ファイル・ディレクトリ操作
pwdコマンドとは?初心者でもわかる現在の作業ディレクトリの確認方法を解説!
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
cd ~ の使い方を完全解説!ホームディレクトリへの移動方法と初心者向けLinuxコマンド入門