Linuxコマンド一覧

tailコマンド|ファイルの末尾だけを表示する

__ __ _ _____
\ \ / /__| |_|_ _|__ _ __ _ __ ___
\ \ /\ / / _ \ '_ \| |/ _ \ '__| '_ ` _ \
\ V V / __/ |_) | | __/ | | | | | |
\_/\_/ \___|_.__/|_|\___|_| |_| |_| |_
 
tail を試すためのサンドボックスです。実機のファイルには影響しません。
user@webterm:~/project$
 

tail はファイルの末尾だけを取り出すコマンドです。既定の10行、-n での行数指定、ログを流れたまま見る -f の使い方を、ブラウザ上のターミナルで打ちながら確認できます。

最終更新: 2026-09-05

書式

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

ファイルの末尾だけを出します。 行数を指定しなければ10行です。

まず打ってみる

このページのターミナルには、30行のログが置いてあります。

$ tail logs/app.log
line 21
line 22
line 23
line 24
line 25
line 26
line 27
line 28
line 29
line 30

最後の10行が出ました。 ログを見るときにこれが役に立つのは、新しい行が下に追記されるからです。

行数を指定する

-n に数を渡します。

$ tail -n 3 logs/app.log
line 28
line 29
line 30

障害が起きた直後は、まずここを見ます。

先頭からの位置で切る

-n の数に + を付けると、意味が変わります。 末尾からの行数ではなく、先頭から数えてその行以降になります。

$ tail -n +28 logs/app.log
line 28
line 29
line 30

流れているログを見続ける

-f を付けると、ファイルを開いたまま、新しく書き込まれた行を出し続けます。

tail -f app.log

動いているサーバーのログを見るときの定番です。 止めるときは Ctrl+C を押します。

実務での使いどころ

tail は、いま起きていることを見るために打つコマンドです。

場面打ち方
直前のエラーを見るtail -n 50 app.log
動いているログを追うtail -f app.log
エラーだけを追い続けるtail -f app.log | grep ERROR
見出し行を飛ばすtail -n +2 users.csv

つまずきやすいところ

-f は自分で止めます。 tail -f は待ち続けるので、プロンプト には戻りません。 Ctrl+C を押すと止まります。

短いファイルではすべて出ます。

$ tail -n 2 notes.txt
buy milk
call the bank

10行より短いファイルなら、tail でも cat でも見えるものは同じです。

書き込み中のファイルは、末尾が途中で切れて見えることがあります。 まだ書き終わっていない行を読んでいるためで、少し待てば続きが出ます。

手を動かして覚える

webterm.appこのサイト

learn.webterm.app別のサイト

>_WEBTERM LEARN

WebTerm Learn|1つのコマンドから、使える状態へ

コマンドは単体で覚えるより、実際の作業の流れの中で使うほうが身につきます。順番に積み上げていくコースがあります。

コースを見る

関連するコマンド

head / less / cat / grep

よくある質問

tail は何行表示しますか?
既定は末尾10行です。-n で行数を指定できます。
tail -f は何をするコマンドですか?
ファイルを開いたまま、新しく書き込まれた行を出し続けます。動いているサーバーのログを見るときの定番です。止めるときは Ctrl+C を押します。
なぜログには tail を使うのですか?
ログは下に追記されていくので、いま起きていることは末尾にあるからです。先頭は起動時の情報で、障害を追うときにはあまり役に立ちません。
先頭から数えた位置で切れますか?
-n +28 のように + を付けると、28行目から最後までという意味になります。末尾からの行数ではなく、先頭からの位置で指定できます。
head との違いは何ですか?
head が先頭、tail が末尾です。オプションの書き方は同じなので、片方を覚えればもう片方も使えます。