Linuxコマンド【 tail 】ファイルの末尾数行を表示する
当ページのリンクには広告が含まれています。
スポンサーリンク
tailコマンドは、ファイルの末尾数行を標準出力に表示するコマンドです。
tailコマンド
書式
tail [オプション] [ファイル]
指定したファイルの末尾 10行を標準出力に表示します。表示する行数やバイト数を指定することもできます。複数のファイルを指定した場合は、ファイル名がファイル内容の前に表示されます。
cf. » head - ファイルの先頭数行を表示
オプション
-c バイト数 | 表示するバイト数を指定します。 |
-f | ファイルが内容が増えた場合、新しい末尾を追加表示します。 |
-n 行数 | 表示する行数を指定します。指定しない場合は、末尾 10行が表示されます。 |
-q | ファイル名を表示しません。 |
-v | 常にファイル名を表示します。 |
使用例
指定したファイル(/etc/passwd)の末尾 10行を表示します(オプション なし)。
$ tail /etc/passwd irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh nobody:x:65534:65534:nobody:/nonexistent:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh Debian-exim:x:101:103::/var/spool/exim4:/bin/false statd:x:102:65534::/var/lib/nfs:/bin/false sshd:x:103:65534::/var/run/sshd:/usr/sbin/nologin karuma:x:1000:1000:Karuma Jiro,,,:/home/karuma:/bin/bash mysql:x:104:107:MySQL Server,,,:/nonexistent:/bin/false messagebus:x:105:108::/var/run/dbus:/bin/false
指定した行数(ここでは、3行)を表示します(オプション -n)。
$ tail -n 3 /etc/passwd karuma:x:1000:1000:Karuma Jiro,,,:/home/karuma:/bin/bash mysql:x:104:107:MySQL Server,,,:/nonexistent:/bin/false messagebus:x:105:108::/var/run/dbus:/bin/false
複数のファイルの末尾 2行を表示します。複数のファイルを指定しているので、ファイル名がファイル内容の前に表示されます。
$ tail -n 2 /etc/passwd hoge.txt ==> /etc/passwd <== mysql:x:104:107:MySQL Server,,,:/nonexistent:/bin/false messagebus:x:105:108::/var/run/dbus:/bin/false ==> hoge.txt <== 1 2 3 4 5 a b c d e
tailコマンドは標準出力の結果をパイプ「|」を介しての処理にもよく利用されます。「dmesgコマンド」をみてみましょう。
$ dmesg | tail -n 3 [ 4.884904] Installing knfsd (copyright (C) 1996 okir@monad.swb.de). [ 14.512133] eth0: no IPv6 routers present [32361.573119] UDP: short packet: From 119.81.7.18:53 to **.**.**.**
ファイルが内容が増えた場合、新しい末尾を追加表示します(オプション -f)。ログやアクセスを確認する場合に大変良く使うオプションです! 追加表示を抜ける場合は「Ctrlキー」を押しながら「Cキー」を押します。
# tail -f /var/log/syslog Nov 15 10:16:35 dhclient: DHCPREQUEST on eth0 to *** port 67 Nov 15 10:16:35 dhclient: DHCPACK from *** Nov 15 10:16:35 dhclient: bound to -- renewal in 34605 seconds. Nov 15 10:17:01 /USR/SBIN/CRON[17122]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) …