head コマンドとは?
head
コマンドは、ファイルの先頭部分(デフォルトでは最初の10行)を表示するためのコマンドです。
ログファイルの冒頭確認や、大きなデータの概要把握に使用されます。
基本構文
head [オプション] [ファイル...]
複数ファイルを指定した場合、ファイルごとにヘッダー(ファイル名)が付いて表示されます。
使用例と出力サンプル
デフォルト:先頭10行を表示
$ head file.txt
(file.txt の最初の10行が出力される)
任意の行数を指定して表示(例:最初の5行)
$ head -n 5 file.txt
複数ファイルを指定する
$ head file1.txt file2.txt
==> file1.txt <==
(file1 の最初の10行)
==> file2.txt <==
(file2 の最初の10行)
-q
オプション:ヘッダー(ファイル名)を非表示にする
$ head -q file1.txt file2.txt
(file1とfile2の内容が連続して表示され、ヘッダー無し)
-v
オプション:常にヘッダーを表示
$ head -v file1.txt
==> file1.txt <==
(内容)
よくあるオプション一覧
オプション | 説明 |
---|---|
-n [行数] | 出力する行数を指定(例:-n 20 ) |
-q | 複数ファイル指定時にファイル名のヘッダーを表示しない |
-v | 単一ファイルでもヘッダーを強制表示 |
実用例:ログファイル確認
$ head -n 50 /var/log/syslog
$ head -q access.log error.log
(両ログの先頭だけをまとめて見る)
よくあるエラーと対処
エラー例 | 原因 | 解決策 |
---|---|---|
head: cannot open ‘file’ | ファイルが存在しない | ファイル名を確認する |
option requires an argument — ‘n’ | -n のあとに数字がない | 例: -n 10 のように記述する |
まとめ
head
はファイルの先頭数行を確認するのに最適-n
で表示行数、-q
で複数ファイルを連結表示、-v
で明示的なヘッダー付き表示ができる- 複数ファイルでも扱いやすく、ログ確認などに頻用される
参考リンク
- https://man7.org/linux/man-pages/man1/head.1.html