head ファイルの先頭部分を表示する
head [オプション] [ファイル...]試してみる
head access.log何も指定しないと、先頭の10行を表示します。このログは6行なので全部出ます。
head -n 2 access.log先頭の2行だけ表示します。
head -3 access.log-n を省いて数字だけでも指定できます。
head -n -4 access.log末尾の4行を除いて、残りを表示します。
head -c 20 access.log; echo先頭の20バイトだけ表示します。echo は改行を足すためです。
head -n 3 access.log | tail -n 1head と tail を組み合わせて、3行目だけを取り出します。
主なオプション
-n 数 | 先頭から指定した行数を表示する(既定は10) |
|---|---|
-n -数 | 末尾の指定した行数を除いて表示する |
-c 数 | 先頭から指定したバイト数を表示する |
-q | 複数ファイルを指定してもファイル名の見出しを出さない |
解説
基本
head はファイルの先頭から、既定で10行を表示します。ログや設定ファイルの冒頭を、素早く確かめるときに使います。
数の指定
-n 5 のほか、-5 とも書けます。-n に負の数を渡すと意味が変わり、「末尾のその行数を除いて、すべて表示する」になります。
バイト単位
-c はバイト数で指定します。日本語のような複数バイトの文字は、途中で切れることがあります。
複数のファイル
ファイルを2つ以上渡すと、各ファイルの前に ==> ファイル名 <== という見出しが付きます。見出しが不要なら -q を使います。
パイプで使う
標準入力も読めるので、sort | head のように、並べ替えた結果の上位だけを見る使い方が定番です。対になるコマンドが、末尾を表示する tail です。