ファイル内の一部分を出力
headコマンド
head
コマンドは、ファイルの先頭部分を表示します。利用方法は次のようになります。
$ head [オプション] [ファイル名]
主なオプションは次のとおりです。
オプション | 説明 |
---|---|
-[行数] | ファイルの先頭から [行数] 分を表示する(-n [行数]も同じ) |
-n -[行数] | ファイルの末尾の [行数]分以前を表示する |
-v | ファイル名を表示する |
例)1番最近更新されたファイルを表示する
$ ls -t | head -1
ls
コマンドの-t
オプションは、最終変更時刻でソートして表示します。デフォルトでは降順で表示されます。
tailコマンド
tail
コマンドは、ファイル内の最後だけ表示します。利用方法は次のようになります。
$ tail [オプション] [ファイル名]
主なオプションは次のとおりです。
オプション | 説明 |
---|---|
-[行数] | ファイルの末尾から[行数]分を表示する(-n [行数]も同じ) |
-n +[行数] | ファイルの先頭から[行数]分以降を表示する |
-f | ファイルの末尾まで読み込んでも終了しないで読み続ける |
-F | ファイル名の変更などが発生した場合、新ファイルをオープンしなおす |
-r | ファイルの内容を行単位で逆にする(GNU tail には存在しない) |
-v | ファイル名を表示する |
例)システムのログファイルをリアルタイムに表示する
$ tail -f /var/log/messages Mar 22 23:17:01 localhost CRON[1688]: (pam_unix) session closed for user root Mar 22 23:39:01 localhost CRON[1691]: (pam_unix) session opened for user root by (uid=0) ....
「-f
」オプションは、ファイルに追加された内容をリアルタイムに表示します。「/var/log/messages」には、さまざまなプログラムのログが出力されます。このため、ログファイルを監視する際に役立ちます。
なお、監視中のtail
コマンドを停止させるには、[CTRL+C]を押下します。
ファイル内容の要約
wcコマンド
wc
コマンドは、テキスト・ファイルの行数、単語数、バイト数を標準出力に渡します。利用方法は次のようになります。
$ wc [オプション] [ファイル名]
主なオプションは次のとおりです。
オプション | 説明 |
---|---|
-c | バイト数だけを表示する |
-l | 行数だけを表示する |
-w | 単語数だけを表示する |
例)サブディレクトリを含むすべてのファイル数を数える
$ ls a.txt b.txt c.txt $ find . -type f | wc -l 3
この例では、3個のファイルが存在していることが分かります。