headコマンドとは?Linuxでファイルの先頭部分を表示する基本
生徒
「Linuxでファイルの最初の行だけを確認したいときって、どうすればいいですか?」
先生
「そういうときは、headコマンドを使うと便利だよ。ファイルの先頭部分を簡単に表示できるんだ。」
生徒
「へえ〜、headって“あたま”って意味ですよね。何行くらい表示されるんですか?」
先生
「そのとおり。デフォルトでは最初の10行が表示されるよ。実際に使い方を見ていこうか。」
1. headコマンドとは?
Linuxのheadコマンドは、指定したファイルの先頭部分(デフォルトでは最初の10行)を画面に表示するためのコマンドです。「head」という名前の通り、データの「頭」の部分だけをサッと確認したいときに非常に重宝します。
例えば、何千行もある長い設定ファイルやログファイルの中身をすべて開いて確認するのは大変です。しかし、headコマンドを使えば、ファイルを開くことなくコマンドライン上で冒頭部分だけを瞬時にチェックできます。プログラミング未経験の方でも、「ファイルの1行目に何が書いてあるか見たい」という場面で直感的に使えるツールです。
以下に、プログラミングやサーバー操作に慣れていない方でもイメージしやすい簡単な実行例を紹介します。
例えば、greeting.txtというファイルに、挨拶が書かれているとします。この中身をheadコマンドで確認してみましょう。
head greeting.txt
こんにちは。
今日は良い天気ですね。
Linuxの勉強を始めましょう。
1行目から10行目までが表示されます。
このように、複雑な編集ソフトを起動しなくても、ファイルの中身を安全かつ素早くのぞき見ることができます。中身を「書き換えてしまう心配がない」のも、初心者にとって大きなメリットです。
2. headコマンドの基本的な使い方
headコマンドの最も基本的でシンプルな使い方は、コマンドの後に確認したいファイル名を入力するだけです。これにより、ファイルの冒頭部分を素早くチェックできます。
例えば、プログラミングの学習で作成した「自己紹介リスト(profile.txt)」というファイルがあるとしましょう。このファイルの中身が非常に長くても、最初の数行だけを見れば、どのようなデータ形式で保存されているかが一目でわかります。実際に一般ユーザー権限で実行してみましょう。
head profile.txt
1行目:名前:太郎
2行目:趣味:読書
3行目:好きな言語:Python
4行目:学習開始日:2026年1月
5行目:目標:エンジニア就職
6行目:現在のステータス:学習中
7行目:居住地:東京都
8行目:年齢:25歳
9行目:得意分野:Web制作
10行目:備考:毎日3時間勉強中
実行結果からわかるように、ファイルprofile.txtの最初の10行が画面に表示されました。Linuxのシステムでは、特に指定がない場合「10行」という数値が標準(デフォルト)として設定されています。
「中身を確認したいけれど、テキストエディタを開いて誤って内容を消してしまうのが怖い」というプログラミング未経験の方でも、headコマンドなら安心です。読み取り専用のような感覚で、安全かつスマートにファイルの書き出し部分を確認できるため、実務の現場でも頻繁に使われる必須テクニックです。
3. 行数を指定するには -nオプション
headコマンドの真価を発揮するのが、この-nオプションです。デフォルトの10行ではなく、「最初の3行だけ見たい」「最初の20行をじっくり確認したい」といった要望に合わせて、表示するボリュームを自由自在にコントロールできます。
特にプログラミング未経験の方は、長い設定ファイルやデータの塊を見ると圧倒されてしまうかもしれません。そんな時は、まず-nオプションで表示を数行に絞ってみましょう。画面が情報で溢れないため、落ち着いて内容を確認できます。
例えば、5行だけ表示させたい場合は、オプションの後に半角スペースを入れて数字を入力します。実際にsample.txtを表示させてみましょう。
head -n 5 sample.txt
1行目の内容:ここからスタート
2行目の内容:順調に読み込んでいます
3行目の内容:3番目のデータです
4行目の内容:あと少しで終わります
5行目の内容:ここで表示が止まります
このように、指定した「5」という行数分だけが正確に表示されました。なお、-n 5という書き方のほかに、head -5 sample.txtのように数字を直接つなげて短く書く方法もありますが、まずは基本の-nを覚えておくのが確実です。
数万行あるような巨大なログファイルを扱う際、このオプションを使わずにファイル全体を開こうとすると、PCの動作が重くなってしまうことがあります。head -nを使えば、システムに負荷をかけず、スマートに必要な情報だけを抜き出せるため、効率的な作業には欠かせないテクニックです。
4. headコマンドの応用|複数ファイルを表示する
headコマンドは、1つのファイルだけでなく複数のファイルをまとめて指定して、それぞれの先頭部分を一度に確認することも可能です。複数の設定ファイルを比較したいときや、複数のログデータの内容をざっと見比べたいときに非常に便利なテクニックです。
使い方は非常にシンプルで、headの後にスペースで区切ってファイル名を並べるだけです。例えば、プログラミングの学習で作成した「1月の目標(goal_jan.txt)」と「2月の目標(goal_feb.txt)」の2つのファイルを同時に確認してみましょう。
head goal_jan.txt goal_feb.txt
==> goal_jan.txt <==
1月:Linuxの基本コマンドを覚える
2月:毎日ターミナルを触る
==> goal_feb.txt <==
1月:Pythonの基礎文法をマスターする
2月:簡単な自動化ツールを作る
実行結果を見ると、各ファイルの内容の前に ==> ファイル名 <== というヘッダーが表示されているのがわかります。これにより、どの行がどのファイルから出力されたものか迷うことがありません。もし、このヘッダー(ファイル名の区切り)を表示させたくない場合は、-q(quiet)オプションを併用することもできます。
複数のファイルを1つずつ cat コマンドなどで開いて確認するのは手間がかかりますが、headコマンドでまとめて指定すれば、画面を切り替えることなくスマートに中身をチェックできます。初心者の方でも、まずは「複数のファイルを並べて書けば一気に表示できる」という点だけ覚えておけば、作業効率がぐんと上がります。
5. tailコマンドとの違い
headコマンドとセットで覚えておきたいのが、対になる機能を持つtail(テイル)コマンドです。名前の通り、headが「頭(先頭)」を表示するのに対し、tailは「しっぽ(末尾)」を表示するために使われます。
実務でよくある「最新のデータだけをチェックしたい」という場面では、ファイルの最後尾に新しい情報が追記されることが多いため、tailコマンドが非常に役立ちます。逆に、データの構造や初期設定を確認したいときは、ファイルの冒頭を表示するheadコマンドが最適です。
例えば、5行のメッセージが書かれたmemo.txtというファイルがあるとします。このファイルの「終わりの3行」だけを確認したい場合の実行例を見てみましょう。
tail -n 3 memo.txt
3行目のメッセージ:中盤の内容です
4行目のメッセージ:後半の内容です
5行目のメッセージ:これが最後の行です
このように、-nオプションの使い方もheadと同じなので、初心者の方でもすぐに使い分けることができます。
ここがポイント!
- head:ファイルの上(過去・設定・ヘッダー)を見たいとき
- tail:ファイルの下(最新・結果・ログ)を見たいとき
「どっちを使うんだっけ?」と迷ったら、見たい場所がデータの「頭」か「しっぽ」かをイメージすると、スムーズにコマンドを使い分けられるようになります。
6. headとパイプで組み合わせる活用例
Linuxの操作に慣れてくると、単独でコマンドを使うだけでなく、複数のコマンドを連携させて複雑な処理をシンプルに解決したくなります。その際に欠かせないのが「パイプ(|)」という機能です。パイプは、あるコマンドの実行結果を、そのまま次のコマンドの入力として渡す「橋渡し」の役割をします。
例えば、ファイルがたくさん入っているディレクトリで、ファイル一覧を表示する ls コマンドを使ったとしましょう。ファイル数が多すぎると画面が文字で埋め尽くされてしまいますが、head コマンドと組み合わせることで、「最新の数件だけを確認する」といった使い方が可能になります。
実際に、カレントディレクトリ内の情報を詳しく表示し、その中から先頭の3行(合計行とファイル2件分)だけを抽出してみましょう。
ls -l | head -n 3
total 32
-rw-r--r-- 1 user user 1234 Feb 3 10:00 file1.txt
-rw-r--r-- 1 user user 5678 Feb 3 10:05 file2.txt
この例では、まず ls -l が実行され、その結果がパイプ | を通じて head -n 3 に送られています。その結果、画面には最初の3行だけが表示されました。
プログラミング未経験の方でも、「データが多すぎて困ったときは、とりあえずパイプで head につなぐ」と覚えておくだけで、ターミナルでの作業が格段に楽になります。このように、他のコマンドと組み合わせて必要な分だけ情報を切り出す柔軟性こそが、head コマンドの大きな魅力です。
7. headコマンドの使いどころと注意点
headコマンドは、実務において「巨大なデータの構造を素早く把握したいとき」や「設定ファイルの記述ミスがないか冒頭だけ確認したいとき」に真価を発揮します。数千行あるファイルでも、最初の数行を見るだけでその中身が何であるかを安全に判断できるため、システム管理やデータ分析の第一歩として欠かせないツールです。
例えば、家計簿データ(kakeibo.csv)の項目名(ヘッダー)だけを確認したい場合を考えてみましょう。ファイル全体を開く必要はなく、1行目だけを見れば十分です。プログラミング未経験の方でも、次のように実行すれば中身がひと目で分かります。
head -n 1 kakeibo.csv
日付,項目名,金額,カテゴリー,備考
このように、「何が書かれているファイルか」を瞬時に特定できるのが最大のメリットです。ただし、使用する際には「バイナリファイル」に注意が必要です。画像、音楽、実行プログラムなどのバイナリファイルをheadで表示しようとすると、画面に意味不明な記号(文字化け)が大量に表示され、ターミナルの操作が効かなくなることがあります。
ここだけは注意!
- テキストファイル(.txt, .csv, .logなど): 安心して使えます。
- バイナリファイル(画像, .exe, .zipなど): 画面が乱れる原因になるため、使用は避けましょう。
もし誤ってバイナリファイルを開いて画面が変になったときは、キーボードの「Ctrl + C」を押して処理を中断するか、ターミナルを一度閉じて開き直せば大丈夫ですので、落ち着いて対処してください。
8. オプション一覧と使い方まとめ
head ファイル名:先頭10行を表示head -n 行数 ファイル名:表示する行数を指定head ファイル1 ファイル2:複数ファイルの先頭を確認コマンド | head -n 行数:出力結果の最初だけ表示
これらを覚えておけば、Linux初心者でもheadコマンドをスムーズに使いこなせるようになります。
まとめ
headコマンドの基本を振り返る
Linuxにおけるheadコマンドは、ファイルの先頭部分を素早く確認するための基本的かつ重要なコマンドです。特にログファイル確認や設定ファイルの冒頭チェックなど、日常的なサーバー操作において頻繁に利用されます。デフォルトでは先頭十行が表示されるため、特に指定しなくてもすぐに内容の概要を把握できる点が大きな特徴です。
また、headコマンドは単純にファイルを表示するだけでなく、オプションやパイプを活用することで、より柔軟な使い方が可能になります。例えば表示行数を調整したり、他のコマンドの結果を加工したりと、実務に直結するスキルとして重要です。
実務で役立つheadコマンドの活用ポイント
実務では、巨大なログファイルやデータファイルを扱う機会が多くあります。そのような場合にすべての内容を開いて確認するのは非効率です。headコマンドを使えば、ファイルの冒頭部分だけを瞬時に確認できるため、処理効率の向上につながります。
特に以下のような場面で活躍します。
- ログファイルの初期状態の確認
- CSVやテキストデータのフォーマット確認
- スクリプトや設定ファイルの先頭チェック
- コマンド出力の一部確認
headコマンドの実践的な使い方例
以下に、よく使われる実践的なコマンド例をまとめます。Linux初心者から中級者まで、日常的に使える内容になっています。
head -n 3 access.log
127.0.0.1 - - [01/Apr/2026] "GET /index.html"
127.0.0.1 - - [01/Apr/2026] "GET /about.html"
127.0.0.1 - - [01/Apr/2026] "GET /contact.html"
このように、ログファイルの最初の数行だけ確認することで、アクセス状況やログ形式を素早く把握できます。
ps aux | head -n 5
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.1 22528 4100 ? Ss Apr01 0:02 /sbin/init
user 1023 0.1 0.3 50000 12000 ? S Apr01 0:10 bash
user 1050 0.2 0.5 70000 20000 ? S Apr01 0:20 node
user 1100 0.0 0.2 30000 8000 ? S Apr01 0:05 sshd
パイプと組み合わせることで、コマンドの出力結果を制御できる点も重要です。大量の出力をすべて表示せず、必要な部分だけを確認できるため、作業効率が大幅に向上します。
初心者が押さえておくべきポイント
headコマンドを使う上で重要なのは、表示専用でありファイルの内容を変更しないという点です。そのため、誤操作によるデータ破損の心配がなく、安全に利用できます。Linux初心者にとっては非常に安心して使えるコマンドの一つです。
一方で、バイナリファイルに対して使用すると文字化けのような表示になるため、基本的にはテキストファイルに対して利用するようにしましょう。この点を理解しておくことで、トラブルを未然に防ぐことができます。
headコマンドとtailコマンドの使い分け
headコマンドはファイルの先頭を確認するためのコマンドですが、対になるコマンドとしてtailがあります。tailはファイルの末尾を表示するため、ログの最新情報を確認する際に使用されます。
つまり、ファイルの開始部分を確認するならhead、終了部分や最新の情報を確認するならtailと覚えておくと、現場で迷うことがなくなります。
headコマンドを使いこなすメリット
headコマンドを使いこなせるようになると、Linux環境での作業スピードが大きく向上します。特にサーバー運用や開発現場では、ファイルの内容を迅速に確認する能力が求められるため、このコマンドは必須スキルといえます。
また、他のコマンドと組み合わせることで応用の幅が広がり、より高度な操作にも対応できるようになります。日々の作業の中で繰り返し使うことで、自然と身についていくでしょう。
生徒
headコマンドはファイルの最初の部分だけを確認できる便利なコマンドだと分かりました。特にログファイルを確認するときに役立ちそうですね。
先生
その通りだね。大量のデータを扱うときに、最初の数行だけを見ることで全体の構造を理解しやすくなるんだ。
生徒
オプションで表示する行数を変えられるのも便利でした。状況に応じて調整できるのは実務でも使えそうです。
先生
そうだね。さらにパイプと組み合わせることで、他のコマンドの出力を制御できるようになると、より実践的な使い方ができるようになるよ。
生徒
tailコマンドとの違いも理解できました。先頭を見るか末尾を見るかで使い分けるんですね。
先生
その理解で大丈夫。headとtailはセットで覚えておくと、Linuxの操作がぐっと楽になるよ。
生徒
これからはファイルを開く前に、まずheadコマンドで確認する習慣をつけていきます。
先生
いい心がけだね。小さなコマンドの積み重ねが、大きな効率化につながるからしっかり身につけていこう。