Linuxコマンド:フィルタテクニック(head, tail)

ログファイルなど、行数の多いファイルを開くするときに利用するのが「head」「tail」コマンドです。ここでは「head」「tail」コマンドを使った基本的なフィルタ方法について紹介します。

動作環境

この記事は、以下の環境で実行した結果を基にしています。他のディストリビューションやバージョンでは、動作結果が異なる場合があることをご了承ください。

cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)

headコマンド

テキストファイルの先頭から指定行数を表示する場合は、headコマンドを使用します。デフォルトで先頭から10行目までを表示します。

書式とオプション

書式

head [オプション]... [ファイル]...

主なオプション

オプション 説明
-c 先頭からXバイトだけ表示します。
-n 先頭からX行だけ表示します。-nを付けずに「-X」と指定することも可能です。

使用例

先頭から指定した行までを表示

先頭からX行目までを表示するには以下のように実行します。

head -n X sample.log

先頭から最下行から指定行分を除いて表示

先頭から最下行からX行分を除いて表示するには以下のように実行します。

head -n -X sample.log

tailコマンド

テキストファイルの最下行から指定行数を表示する場合は、tailコマンドを使用します。デフォルトで最下行から10行分を表示します。

書式とオプション

書式

tail [オプション]... [ファイル]...

主なオプション

オプション 説明
-c 最下行からXバイトだけ表示します。
-n 最下行からX行だけ表示します。
-nを付けずに「-X」と指定することも可能です。
-f ファイルの最下行に追加された行を常に表示します。

使用例

最下行から指定行分を表示

最下行からX行分を表示するには以下のように実行します。

tail -n X sample.log

指定行目から最下行までを表示する

X行目から最下行までを表示するには以下のように実行します。

tail -n +X sample.log

ファイルの変更を監視する

-fオプションを使用すると、指定したファイルの最下行への追記を監視することができます。ログファイルの目視監視でよく使われます。

tail -f sample.log

まとめ

Linuxの基本コマンドは、この記事のように自分なりにでもまとめてみると頭にすっと入ってきます。

スポンサーリンク