GNU Core Utilities/tail
tail
コマンドは、ファイルの末尾部分を表示するためのコマンドです。GNU coreutils に含まれており、Linux では GNU 版が、FreeBSD では BSD 版が提供されています。基本的な動作は共通していますが、細かなオプションの違いがあります。
基本的な使い方
編集tail [オプション] ファイル...
主なオプション(GNU coreutils版)
編集主なオプション オプション 説明 -n, --lines=N
表示する行数を指定 -c, --bytes=N
表示するバイト数を指定 -f, --follow
ファイルの末尾を監視し続ける -q, --quiet, --silent
ファイル名を表示しない -v, --verbose
詳細情報を表示
例
編集ファイルの末尾10行を表示(デフォルト)
編集tail file.txt
file.txt
の末尾10行を表示。
ファイルの末尾5行を表示
編集tail -n 5 file.txt
file.txt
の末尾5行を表示。
ファイルの末尾100バイトを表示
編集tail -c 100 file.txt
file.txt
の末尾100バイトを表示。
ファイルの末尾をリアルタイムで監視
編集tail -f file.txt
ファイルの末尾を監視し、新しい行が追加されるたびに表示。
複数のファイルを監視
編集tail -f file1.txt file2.txt
複数のファイルの末尾をリアルタイムで監視。
詳細表示しながら末尾10行を表示
編集tail -v file.txt
ファイルの末尾10行を表示し、ファイル名も表示。
ファイル名を表示せずに末尾10行を表示
編集tail -q file.txt
複数のファイルがある場合でも、ファイル名を表示せずに末尾10行を表示。
FreeBSD 版との違い
編集FreeBSD でも tail
コマンドは提供されていますが、GNU coreutils 版といくつか違いがあります。
主な違い:
編集-v
(詳細表示)オプションが FreeBSD にはない- FreeBSD の
tail
には、-v
オプションがないため、ファイル名や詳細情報を表示することはできません。
- FreeBSD の
-q
(ファイル名を表示しない)オプションがない- FreeBSD の
tail
には、-q
オプションがないため、複数のファイルを表示する際にファイル名を非表示にすることはできません。
- FreeBSD の
-f
(ファイルの末尾を監視)オプションの動作が異なる- FreeBSD 版の
-f
は、リアルタイムでファイルの末尾を監視する動作が、GNU 版とは異なる場合があります。
- FreeBSD 版の
- GNU coreutils 版を FreeBSD で使う方法
coreutils
パッケージをインストールするとgtail
という名前で GNU 版tail
が使える。
pkg install coreutils gtail -f file.txt # GNU coreutils 版の tail
詳しくは、それぞれの環境で man tail
を確認してください。