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

grep -Hオプションの使い方|ファイル名と一致行を同時に表示する方法を解説!

grep -Hオプション|ファイル名と一緒に一致行を表示する
grep -Hオプション|ファイル名と一緒に一致行を表示する

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

生徒

「Linuxでテキストの中からキーワードを探すとき、どのファイルに書かれていたかも表示できますか?」

先生

「できますよ。grepコマンドに-Hオプションをつけると、ファイル名も一緒に表示されるようになります。」

生徒

「それは便利ですね!どうやって使えばいいか、教えてください!」

先生

「それでは、初心者向けにgrep -Hの使い方を丁寧に説明していきましょう。」

1. grepコマンドとは?

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

grep(グレップ)は、Linuxでテキストファイルの中から特定の文字列を検索するコマンドです。例えば、料理のレシピがたくさん入ったファイルの中から「たまご」という単語を見つけ出す、といった使い方ができます。

検索結果だけでなく、行番号やファイル名などの情報も表示できるので、Linux初心者でも効率よく作業できる便利なコマンドです。

2. -Hオプションとは?

2. -Hオプションとは?
2. -Hオプションとは?

-H(エイチ)オプションは、検索結果にファイル名も一緒に表示してくれるオプションです。

複数のファイルを対象に検索したとき、「どのファイルにヒットしたのか」がすぐに分かるようになります。

通常はファイルが複数あると自動的にファイル名も表示されますが、1つのファイルだけを検索した場合でも明示的にファイル名を出力したいときに便利です。

3. grep -H の基本的な使い方

3. grep -H の基本的な使い方
3. grep -H の基本的な使い方

では、実際の使用例を見てみましょう。まず、2つのテキストファイルを用意したと仮定します。

file1.txt の中身:


りんご
バナナ
オレンジ

file2.txt の中身:


パイナップル
バナナジュース
グレープ

この中から「バナナ」を探し、どのファイルにあったかも確認したいときに以下のように入力します。


grep -H バナナ file1.txt file2.txt
file1.txt:バナナ
file2.txt:バナナジュース

ポイント:ファイル名と一致した行がセットで表示されるので、あとから該当ファイルを編集・確認したいときにとても役立ちます。

4. ファイル名だけ表示したいときは?

4. ファイル名だけ表示したいときは?
4. ファイル名だけ表示したいときは?

ちなみに、-l(小文字のエル)オプションを使うと、一致したファイル名だけを表示できます。

-Hとの違いを理解して使い分けましょう。


grep -l バナナ file1.txt file2.txt
file1.txt
file2.txt

このように、実際の行は表示せず「バナナが含まれているファイル名」だけを知りたいときに便利です。

5. grep -H と cat の違い

5. grep -H と cat の違い
5. grep -H と cat の違い

catコマンドは、ファイルの中身をそのまま表示するだけなので、検索機能はありません。特定のキーワードを探したいときは、grepの方が断然効率的です。

特に、grep -Hのようにファイル名とセットで出力できると、大量のログファイルや設定ファイルを管理する際にも非常に助かります。

6. grep -H と他のオプションを組み合わせる

6. grep -H と他のオプションを組み合わせる
6. grep -H と他のオプションを組み合わせる

-Hは、他のオプションと組み合わせて使うとさらに便利です。

  • -n:一致した行の行番号を表示
  • -i:大文字と小文字を区別せずに検索
  • -r:ディレクトリを再帰的に検索

たとえば、「Error」という単語をディレクトリ全体から探して、どのファイルの何行目にあるかを知りたい場合は以下のようにします。


grep -Hinr error ./logs
logs/system.log:15:System error occurred
logs/db.log:34:Database Error

このように、ファイル名・行番号・一致行の内容がすべて表示されます。

7. grep -H を使う上での注意点

7. grep -H を使う上での注意点
7. grep -H を使う上での注意点

注意点として、1ファイルのみ指定したときは通常ファイル名が表示されませんが、-Hをつけると無理やり表示させることができます。


grep バナナ file1.txt
バナナ

grep -H バナナ file1.txt
file1.txt:バナナ

このように、ファイル名を表示したいときは-Hを忘れずに使いましょう。

8. 初心者におすすめの使い方

8. 初心者におすすめの使い方
8. 初心者におすすめの使い方

ログファイルや複数のテキストを扱うときに、「どのファイルにキーワードがあるのか」を素早く知りたいなら、grep -Hは本当に便利です。

特にエラーログの調査や、メモ書きの中から特定の単語を探す場面など、日常的な用途でも使えます。

最初は難しく感じるかもしれませんが、少しずつ覚えていけば、Linuxの操作がぐっと楽になります。

カテゴリの一覧へ
新着記事
New1
テキスト・データ処理
cat -Eオプションの使い方を丁寧に解説!初心者でもわかる行末記号の表示方法と-eとの違い
New2
テキスト・データ処理
grep -Hオプションの使い方|ファイル名と一致行を同時に表示する方法を解説!
New3
ファイル・ディレクトリ操作
cp --backupオプションの使い方|バックアップしながらファイルをコピーしよう
New4
ファイル・ディレクトリ操作
stat -Lオプションの使い方を解説|シンボリックリンクをたどってファイル情報を確認しよう
人気記事
No.1
Java&Spring記事人気No1
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.2
Java&Spring記事人気No2
ファイル・ディレクトリ操作
rmコマンドとは?Linuxでファイルやディレクトリを削除する基本
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
mvコマンドとは?Linuxでファイルやディレクトリを移動・名前変更する基本
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
Linuxのmkdirコマンドとは?初心者でもわかる新しいディレクトリ作成の基本