Linuxを使っていると、ログファイルや設定ファイルの中身を素早く確認したい場面がよくあります。そんなときに便利なのが、headコマンドです。
headコマンドを使えば、ファイルの先頭部分だけを効率よく確認することができ、全体を読み込まずに済むため時間の節約にもなります。
この記事では、headコマンドの基本的な使い方から、オプションの使い方、tailとの違いや活用事例までわかりやすく解説していきます。Linux初心者の方にも理解できるよう丁寧に紹介しますので、ぜひ参考にしてください。
headコマンドは、ファイルの先頭部分を表示するLinuxの標準コマンドです。
基本的には最初の10行を表示しますが、オプションを使うことで表示する行数やバイト数を自由に変更できます。
head [オプション] ファイル名
例えば、sample.txt
の最初の10行を表示するには、以下のように入力します。
head sample.txt
ファイルが長くても、先頭の部分だけ確認できるので、内容の概要をつかむのに非常に便利です。
デフォルトでは10行表示されますが、-n
オプションを使うことで、表示する行数を自由に設定することができます。
head -n 5 sample.txt
このようにすると、sample.txt
の先頭5行だけが表示されます。
head -n 20 sample.txt
このように柔軟に対応できるため、大きなファイルを扱うときにも重宝します。
headコマンドでは、行ではなくバイト数で表示を制御することも可能です。
このときに使うのが-c
オプションです。
head -c 100 sample.txt
このようにすると、ファイルの先頭から100バイト分だけが表示されます。
バイナリファイルなど、行単位ではなくバイト単位での処理が必要な場合に役立ちます。
複数のファイルを同時に指定すると、各ファイルの先頭が区切って表示されます。
ファイル名も一緒に表示されるので、どの内容がどのファイルのものか一目でわかります。
head sample1.txt sample2.txt
==> sample1.txt <==
(sample1.txtの先頭10行)
==> sample2.txt <==
(sample2.txtの先頭10行)
このようにファイル名が見出しとして表示されるのが特徴です。
headがファイルの先頭を表示するのに対し、tailは末尾を表示するコマンドです。
ログファイルなどでは、tailとheadを組み合わせて使うこともよくあります。
tail [オプション] ファイル名
たとえば、ファイルの最後の10行を見たいときは以下のようにします。
tail sample.txt
また、ログファイルをリアルタイムで監視するにはtail -f
が使われます。
tail -f /var/log/syslog
headとtailを理解しておけば、ファイルの先頭から末尾まで自在に確認できるようになります。
headコマンドはパイプ(|
)と組み合わせて使うと威力を発揮します。
たとえば、長いリストの中から最初の数件だけ見たい場合などに便利です。
ls -l | head
ファイルが多いディレクトリでは、最初の数件だけを見て整理するのに使えます。
ps aux | head
プロセスの数が多くても、必要な情報だけ絞って見ることができます。
コマンド | 内容 |
---|---|
head file.txt | 先頭10行を表示 |
head -n 5 file.txt | 先頭5行を表示 |
head -c 100 file.txt | 先頭100バイトを表示 |
head file1.txt file2.txt | 複数ファイルの先頭表示 |
`command | head` |
このように、多様な使い方ができるのがheadコマンドの魅力です。
headコマンドはシンプルですが、以下の点に注意しましょう。
headコマンドは、ファイルの内容をすばやく確認したいときの強い味方です。
特にログの確認、設定ファイルの冒頭確認、大量データの一部抽出など、さまざまな場面で活用できます。
使い方自体はとてもシンプルですが、オプションやパイプとの組み合わせを知っておくことで、作業の効率を大幅に高めることができます。