tailコマンドとは、Linuxでファイルの末尾部分を表示するためのコマンドです。
Linuxでは、ログファイル、設定ファイル、CSVファイル、テキストファイルなど、さまざまなファイルの中身を確認しながら作業します。
ファイルの先頭部分を確認したい場合はheadコマンドを使います。
一方で、ファイルの末尾部分を確認したい場合に使うのがtailコマンドです。
特にログファイルでは、新しい内容がファイルの末尾に追加されることが多いため、tailコマンドはサーバー管理やVPS運用でもよく使われます。
この記事では、Linux初心者向けにtailコマンドの意味、基本的な使い方、表示行数の指定、tail -fでログをリアルタイム確認する方法、tail -Fとの違い、head・cat・lessとの使い分け、よくあるエラーまでわかりやすく解説します。
- tailコマンドとは?
- tailコマンドの基本的な使い方
- tailコマンドは初期設定で末尾10行を表示する
- tailコマンドを使う基本の流れ
- tailコマンドの実行例
- tail -nで表示する行数を指定する
- tail -5のように短く書く方法
- tailコマンドで末尾1行だけ表示する
- tailコマンドで末尾20行を表示する
- tail -cで末尾から指定したバイト数を表示する
- tailコマンドで複数ファイルを表示する
- tail -qでファイル名の見出しを表示しない
- tail -vでファイル名の見出しを表示する
- tail -fでログをリアルタイムに表示する
- tail -fを終了する方法
- tail -fの実行例
- tail -Fとは?
- tail -fとtail -Fの違い
- tailコマンドでよく使うオプション一覧
- tailコマンドでログファイルを確認する
- tailコマンドでエラーログを確認する
- tailコマンドでCSVファイルの末尾を確認する
- tailコマンドとheadコマンドの違い
- tailコマンドとcatコマンドの違い
- tailコマンドとlessコマンドの違い
- tailコマンドとgrepコマンドの組み合わせ
- tail -fとgrepを組み合わせる
- tailコマンドでよくあるエラー・つまずき
- tailコマンドで表示できないときの確認ポイント
- tailコマンドを安全に使うコツ
- tailコマンドを使った練習手順
- tail -fを使った練習手順
- tailコマンドを覚えると何ができるようになる?
- tailコマンドのよくある質問
- まとめ
tailコマンドとは?
tailコマンドとは、Linuxでファイルの末尾部分を表示するためのコマンドです。
tailには「しっぽ」「末尾」という意味があります。
Linuxのtailコマンドでは、指定したファイルの最後の数行を表示できます。
たとえば、sample.logの末尾を表示したい場合は、次のように実行します。
tail sample.log
行数を指定しない場合、tailコマンドは初期設定でファイルの末尾10行を表示します。
ログファイルの最新部分を確認したいときに便利です。
tailコマンドの基本的な使い方
tailコマンドの基本的な使い方は、次の通りです。
tail ファイル名
たとえば、access.logというファイルの末尾を表示したい場合は、次のように実行します。
tail access.log
このコマンドを実行すると、access.logの末尾10行が表示されます。
tailコマンドは、ファイルを編集するコマンドではありません。
ファイルの中身を確認するための閲覧用コマンドです。
tailコマンドは初期設定で末尾10行を表示する
tailコマンドは、行数を指定しない場合、ファイルの末尾10行を表示します。
たとえば、sample.logに100行以上の内容がある場合でも、次のコマンドでは最後の10行だけが表示されます。
tail sample.log
ログファイルでは、新しい情報が末尾に追加されることが多いため、tailだけで最新の状況をすばやく確認できます。
表示する行数を変えたい場合は、-nオプションを使います。
tailコマンドを使う基本の流れ
Linux初心者は、tailコマンドを単体で覚えるよりも、pwd、ls、cat、head、lessとセットで覚えると理解しやすいです。
基本の流れは次の通りです。
pwd
ls -l
head sample.log
tail sample.log
less sample.log
まずpwdで現在いるディレクトリを確認します。
次にls -lで、対象ファイルが存在するか確認します。
先頭部分を見たい場合はheadを使います。
末尾部分を見たい場合はtailを使います。
ファイル全体をスクロールして確認したい場合はlessを使います。
この流れを覚えると、確認したい場所に合わせてコマンドを使い分けやすくなります。
tailコマンドの実行例
実際にtailコマンドを使う例を見てみましょう。
まず、練習用のファイルを作成します。
echo "line1" > sample.log
echo "line2" >> sample.log
echo "line3" >> sample.log
echo "line4" >> sample.log
echo "line5" >> sample.log
sample.logの中身をcatで確認します。
cat sample.log
実行結果は次のようになります。
line1
line2
line3
line4
line5
tailで末尾部分を表示する場合は、次のように実行します。
tail sample.log
この例ではファイルが5行しかないため、5行すべてが表示されます。
tail -nで表示する行数を指定する
tail -nを使うと、末尾から表示する行数を指定できます。
基本形は次の通りです。
tail -n 行数 ファイル名
たとえば、sample.logの末尾3行だけを表示したい場合は、次のように実行します。
tail -n 3 sample.log
実行結果は次のようになります。
line3
line4
line5
このように、tail -nを使うと、必要な行数だけを末尾から表示できます。
tail -5のように短く書く方法
tailコマンドでは、環境によって次のように短く書ける場合があります。
tail -5 sample.log
これは、sample.logの末尾5行を表示するという意味です。
ただし、初心者には次のように-nを使った書き方のほうが意味を理解しやすいです。
tail -n 5 sample.log
記事や手順書では、わかりやすさを優先してtail -n 行数 ファイル名の形で覚えるのがおすすめです。
tailコマンドで末尾1行だけ表示する
ファイルの末尾1行だけを表示したい場合は、tail -n 1を使います。
tail -n 1 sample.log
ログファイルの最新1行だけ確認したいときに便利です。
たとえば、処理結果が最後の行に出力されるログで、最新の状態だけ確認したい場合に使えます。
tailコマンドで末尾20行を表示する
ファイルの末尾20行を表示したい場合は、次のように実行します。
tail -n 20 sample.log
ログファイルの直近の流れを確認したい場合、末尾10行だけでは足りないことがあります。
そのような場合は、tail -n 20やtail -n 50のように行数を増やして確認できます。
tail -cで末尾から指定したバイト数を表示する
tail -cを使うと、行数ではなくバイト数を指定して末尾を表示できます。
基本形は次の通りです。
tail -c バイト数 ファイル名
たとえば、sample.logの末尾100バイトだけを表示する場合は、次のように実行します。
tail -c 100 sample.log
tail -cは、ファイルの最後の一部だけをバイト単位で確認したい場合に使えます。
ただし、日本語のようなマルチバイト文字を含むファイルでは、バイト数と文字数が一致しないことがあります。
初心者のうちは、まずtail -nで行数を指定する使い方を覚えれば十分です。
tailコマンドで複数ファイルを表示する
tailコマンドでは、複数のファイルをまとめて指定できます。
たとえば、app.logとerror.logの末尾をまとめて表示したい場合は、次のように実行します。
tail app.log error.log
複数ファイルを指定すると、どのファイルの内容かがわかるように、ファイル名の見出しが表示されることがあります。
==> app.log <==
app line1
app line2
==> error.log <==
error line1
error line2
複数のログファイルの最新部分をまとめて確認したい場合に便利です。
tail -qでファイル名の見出しを表示しない
複数ファイルを指定したとき、ファイル名の見出しを表示したくない場合は、tail -qを使います。
tail -q app.log error.log
-qはquietの意味です。
複数ファイルの中身だけを連続して表示したい場合に使えます。
ただし、初心者のうちは、どのファイルの内容かわかるように通常のtailを使うほうが安全です。
tail -vでファイル名の見出しを表示する
tail -vを使うと、ファイルが1つだけの場合でもファイル名の見出しを表示できます。
tail -v sample.log
実行結果の例は次の通りです。
==> sample.log <==
line1
line2
line3
どのファイルの出力なのかを明確にしたい場合に便利です。
tail -fでログをリアルタイムに表示する
tailコマンドで特によく使われるのが、tail -fです。
tail -fを使うと、ファイルの末尾を表示したあと、新しく追加された内容をリアルタイムに表示し続けます。
tail -f sample.log
ログファイルを監視するときによく使われるコマンドです。
たとえば、Webサーバーやアプリケーションのログを確認しながら、別の操作を行う場合に便利です。
ログに新しい行が追加されると、その内容がターミナルに表示されます。
tail -fを終了する方法
tail -fは、通常のtailとは違い、実行後も表示を続けます。
そのため、初心者は「コマンドが終わらない」と感じることがあります。
tail -fを終了するには、Ctrlキーを押しながらCを押します。
Ctrl + C
tail -fはログを監視し続けるコマンドなので、終了するときはCtrl + Cを使うと覚えておきましょう。
tail -fの実行例
tail -fの動きを確認するには、2つのターミナルを使うとわかりやすいです。
1つ目のターミナルで、次のコマンドを実行します。
tail -f sample.log
2つ目のターミナルで、同じファイルに内容を追記します。
echo "new log line" >> sample.log
すると、1つ目のターミナルにnew log lineが表示されます。
このように、tail -fを使うと、ファイルに追記された内容をリアルタイムに確認できます。
tail -Fとは?
tail -Fは、tail -fに似た使い方ですが、ログローテーションなどでファイルが作り直された場合にも追跡しやすいオプションです。
tail -F sample.log
ログファイルは、一定期間や一定サイズごとにローテーションされることがあります。
そのとき、tail -fでは追跡がうまく続かない場合があります。
tail -Fを使うと、ファイル名を追いかける動きになり、ログローテーション後も確認しやすくなります。
初心者は、通常のリアルタイム確認ならtail -f、ログローテーションを意識するならtail -Fと覚えるとよいです。
tail -fとtail -Fの違い
tail -fとtail -Fは、どちらもログのリアルタイム確認で使われます。
違いを整理すると、次のようになります。
| コマンド | 特徴 | 向いている場面 |
|---|---|---|
| tail -f | ファイルの追記を監視する | 通常のログ確認 |
| tail -F | ファイル名を追跡し、作り直しにも対応しやすい | ログローテーションがあるログ確認 |
まずはtail -fを覚えれば十分です。
サーバー運用でログローテーションを扱うようになったら、tail -Fも覚えると便利です。
tailコマンドでよく使うオプション一覧
tailコマンドで初心者が知っておきたい使い方をまとめると、次の通りです。
| コマンド | 意味 | 使う場面 |
|---|---|---|
| tail file.txt | 末尾10行を表示する | ファイルの最後を確認したいとき |
| tail -n 5 file.txt | 末尾5行を表示する | 表示行数を指定したいとき |
| tail -n 1 file.txt | 末尾1行を表示する | 最新の1行だけ見たいとき |
| tail -c 100 file.txt | 末尾100バイトを表示する | 末尾の一部だけ確認したいとき |
| tail file1 file2 | 複数ファイルの末尾を表示する | 複数ログをまとめて確認したいとき |
| tail -f file.log | 追記をリアルタイム表示する | ログを監視したいとき |
| tail -F file.log | ファイル名を追跡してリアルタイム表示する | ログローテーションに対応したいとき |
初心者は、まずtail、tail -n、tail -fを覚えるとよいです。
tailコマンドでログファイルを確認する
tailコマンドは、ログファイルの確認で非常によく使われます。
たとえば、アプリケーションログの末尾を確認する場合は、次のように実行します。
tail app.log
末尾50行を確認したい場合は、次のように実行します。
tail -n 50 app.log
リアルタイムにログを確認したい場合は、tail -fを使います。
tail -f app.log
ログファイルは新しい情報が末尾に追加されることが多いため、tailコマンドとの相性がとてもよいです。
tailコマンドでエラーログを確認する
エラーログを確認するときにもtailコマンドは便利です。
たとえば、error.logの最新部分を確認したい場合は、次のように実行します。
tail error.log
エラー発生直後にログを確認したい場合は、tail -fを使います。
tail -f error.log
この状態でアプリケーションを操作すると、発生したエラーがリアルタイムに表示されることがあります。
エラー調査では、tail -fでログを見ながら動作確認する方法がよく使われます。
tailコマンドでCSVファイルの末尾を確認する
tailコマンドは、CSVファイルの末尾を確認するときにも使えます。
たとえば、data.csvの最後の数行を確認する場合は、次のように実行します。
tail data.csv
CSVファイルにデータが追記されているか確認したい場合に便利です。
最後の1行だけ確認したい場合は、次のように実行します。
tail -n 1 data.csv
定期的に追記されるCSVログの最新行を確認したいときにも使えます。
tailコマンドとheadコマンドの違い
tailコマンドとheadコマンドは、セットで覚えると理解しやすいです。
headはファイルの先頭部分を表示します。
tailはファイルの末尾部分を表示します。
| コマンド | 表示する場所 | 例 |
|---|---|---|
| head | 先頭 | head sample.log |
| tail | 末尾 | tail sample.log |
ファイルの最初を確認したい場合はheadを使います。
ファイルの最後を確認したい場合はtailを使います。
Linux初心者は、headは先頭、tailは末尾と覚えるとわかりやすいです。
tailコマンドとcatコマンドの違い
tailコマンドとcatコマンドは、どちらもファイルの中身を表示するときに使います。
ただし、表示する範囲が違います。
| コマンド | 表示範囲 | 向いている場面 |
|---|---|---|
| cat | ファイル全体 | 短いファイルをすべて確認したいとき |
| tail | ファイルの末尾部分 | 最新部分だけ確認したいとき |
短いファイルを全部表示したい場合はcatが便利です。
長いファイルの末尾だけ確認したい場合はtailが向いています。
tailコマンドとlessコマンドの違い
tailコマンドとlessコマンドも、ログファイル確認でよく使います。
tailは、ファイルの末尾部分を表示します。
lessは、ファイル全体をスクロールしながら確認できます。
| コマンド | 特徴 | 向いている場面 |
|---|---|---|
| tail | 末尾をすばやく表示する | 最新ログだけ確認したいとき |
| less | スクロールしながら全体を確認する | ログ全体をじっくり見たいとき |
ログの最新部分だけ見たい場合はtailが効率的です。
ログ全体を検索しながら確認したい場合はlessを使いましょう。
tailコマンドとgrepコマンドの組み合わせ
tailコマンドは、grepコマンドと組み合わせて使うこともあります。
たとえば、ログファイルの末尾100行からerrorを含む行だけを探したい場合は、次のように実行できます。
tail -n 100 sample.log | grep error
このコマンドでは、まずtail -n 100でsample.logの末尾100行を取り出します。
その結果をgrepに渡し、errorを含む行だけを表示します。
ログ確認では、tailとgrepの組み合わせはよく使われます。
tail -fとgrepを組み合わせる
tail -fとgrepを組み合わせると、リアルタイムに追加されるログの中から特定のキーワードを含む行だけを表示できます。
たとえば、errorを含む行だけを確認したい場合は、次のように実行します。
tail -f sample.log | grep error
この状態でsample.logにerrorを含む行が追加されると、その行が表示されます。
アプリケーションのエラー調査やログ監視で便利な使い方です。
終了するときはCtrl + Cを押します。
Ctrl + C
tailコマンドでよくあるエラー・つまずき
tailコマンドを使っていると、エラーやつまずきが発生することがあります。
初心者がよく遭遇するポイントを確認しておきましょう。
No such file or directory
No such file or directoryは、「そのようなファイルやディレクトリはありません」という意味です。
存在しないファイルをtailで表示しようとすると、次のようなエラーが表示されることがあります。
tail sample.log
tail: cannot open 'sample.log' for reading: No such file or directory
この場合、sample.logが現在のディレクトリに存在しない可能性があります。
まずpwdで現在地を確認し、lsでファイルがあるか確認しましょう。
pwd
ls -l
Permission denied
Permission deniedは、「権限がありません」という意味です。
読み取り権限がないファイルをtailで表示しようとすると、次のようなエラーが出ることがあります。
tail secret.log
tail: cannot open 'secret.log' for reading: Permission denied
この場合、現在のユーザーにそのファイルを読む権限がありません。
ls -lで権限を確認できます。
ls -l secret.log
権限がないファイルを無理に開こうとせず、必要な権限があるか確認しましょう。
tail -fが終わらない
tail -fは、ファイルに追記された内容を監視し続けるコマンドです。
そのため、通常のtailのようにすぐ終了しません。
tail -fを終了したい場合は、Ctrl + Cを押します。
Ctrl + C
これはエラーではなく、tail -fの正常な動作です。
tail -fで何も表示されない
tail -fで何も表示されない場合、対象ファイルに新しい内容が追記されていない可能性があります。
tail -fは、ファイルに新しい行が追加されたときに表示します。
別のターミナルで次のように追記してみると、動作を確認できます。
echo "test log" >> sample.log
また、指定しているファイルが正しいかも確認しましょう。
ls -l sample.log
文字化けする
tailでファイルを表示したときに文字化けする場合、文字コードが原因の可能性があります。
特に日本語ファイルやWindowsで作成したファイルをLinuxで表示する場合、文字化けすることがあります。
Linuxサーバーで扱うログやテキストファイルは、UTF-8で統一しておくとトラブルを減らせます。
tailコマンドで表示できないときの確認ポイント
tailコマンドでファイルを表示できないときは、次のポイントを確認しましょう。
- 現在地をpwdで確認したか
- 対象ファイルが存在しているか
- ファイル名を間違えていないか
- 読み取り権限があるか
- tail -fの場合、新しい内容が追記されているか
- 文字コードが合っているか
- tail -fを終了するにはCtrl + Cを使うことを知っているか
エラーが出たら、まず次のコマンドで現在地とファイルの状態を確認すると原因を探しやすくなります。
pwd
ls -la
tailコマンドを安全に使うコツ
tailコマンドは、基本的にはファイルの末尾部分を表示するだけのコマンドです。
そのため、tailでファイルを表示しただけで内容が変更されることはありません。
ログファイルやCSVファイルの最新部分を確認する場合に、安全に使いやすいコマンドです。
初心者は、次の流れを習慣にすると安心です。
pwd
ls -l
tail ファイル名
まずpwdで現在地を確認します。
ls -lで対象ファイルが存在するか確認します。
tailでファイルの末尾部分を表示します。
必要に応じて、tail -nで表示行数を指定しましょう。
tailコマンドを使った練習手順
Linux初心者は、練習用ディレクトリでtailコマンドを試すと理解しやすくなります。
次の手順で練習してみましょう。
1. ホームディレクトリへ移動する
cd
2. 練習用ディレクトリを作成する
mkdir tail-practice
3. 練習用ディレクトリへ移動する
cd tail-practice
4. 練習用ファイルを作成する
echo "line1" > sample.log
echo "line2" >> sample.log
echo "line3" >> sample.log
echo "line4" >> sample.log
echo "line5" >> sample.log
echo "line6" >> sample.log
5. ファイル全体を確認する
cat sample.log
6. 末尾10行を表示する
tail sample.log
7. 末尾3行だけ表示する
tail -n 3 sample.log
8. 末尾1行だけ表示する
tail -n 1 sample.log
この練習を行うと、tailの基本表示、行数指定、末尾1行の確認までまとめて試せます。
tail -fを使った練習手順
tail -fの練習は、2つのターミナルを使うとわかりやすいです。
1. 1つ目のターミナルでtail -fを実行する
tail -f sample.log
2. 2つ目のターミナルでログを追記する
echo "new line" >> sample.log
3. 1つ目のターミナルに表示されるか確認する
sample.logに追記されたnew lineが、1つ目のターミナルに表示されます。
4. tail -fを終了する
tail -fを終了するには、Ctrl + Cを押します。
Ctrl + C
この練習をすると、ログファイルをリアルタイムに確認する流れが理解しやすくなります。
tailコマンドを覚えると何ができるようになる?
tailコマンドを覚えると、Linuxでファイルの末尾部分や最新ログをすばやく確認できるようになります。
具体的には、次のような作業に役立ちます。
- ファイルの末尾10行を確認する
- 表示する行数を指定する
- ログファイルの最新部分を確認する
- tail -fでログをリアルタイムに監視する
- CSVファイルの最新行を確認する
- エラーログを確認する
- grepと組み合わせて特定キーワードを探す
- headと組み合わせてファイルの先頭・末尾を確認する
LinuxサーバーやVPSを扱う場合、ログの最新部分を確認する場面はとても多いです。
tailコマンドを使えるようになると、トラブル調査や動作確認がしやすくなります。
tailコマンドのよくある質問
tailコマンドは何に使いますか?
tailコマンドは、Linuxでファイルの末尾部分を表示するために使います。
ログファイル、CSVファイル、テキストファイルの最後の数行を確認したいときに便利です。
tailコマンドの基本形は何ですか?
基本形は次の通りです。
tail ファイル名
たとえば、sample.logの末尾を表示する場合は次のように実行します。
tail sample.log
tailコマンドは何行表示しますか?
行数を指定しない場合、tailコマンドは初期設定で末尾10行を表示します。
表示行数を変えたい場合は、-nオプションを使います。
tailで表示行数を指定するにはどうしますか?
表示行数を指定するには、tail -nを使います。
tail -n 5 sample.log
この例では、sample.logの末尾5行を表示します。
tailで末尾1行だけ表示するにはどうしますか?
末尾1行だけ表示するには、tail -n 1を使います。
tail -n 1 sample.log
ログファイルの最新1行だけ確認したいときに便利です。
tail -fとは何ですか?
tail -fは、ファイルの末尾を表示したあと、新しく追記された内容をリアルタイムに表示し続けるオプションです。
tail -f sample.log
ログファイルの監視でよく使います。
tail -fを終了するにはどうしますか?
tail -fを終了するには、Ctrl + Cを押します。
Ctrl + C
tail -fは監視を続けるコマンドなので、終了操作が必要です。
tail -Fとは何ですか?
tail -Fは、ログローテーションなどでファイルが作り直された場合にも追跡しやすいオプションです。
通常のリアルタイム確認ならtail -f、ログローテーションを意識するならtail -Fが便利です。
tailとheadの違いは何ですか?
headはファイルの先頭部分を表示します。
tailはファイルの末尾部分を表示します。
先頭を見るならhead、末尾を見るならtailと覚えるとわかりやすいです。
tailとcatの違いは何ですか?
catはファイル全体を表示します。
tailはファイルの末尾部分だけを表示します。
短いファイルを全部見るならcat、最新部分だけ見るならtailが便利です。
tailとlessの違いは何ですか?
lessはファイル全体をスクロールしながら確認できます。
tailはファイルの末尾部分をすばやく表示します。
ログ全体を見たい場合はless、最新ログだけ見たい場合はtailが向いています。
tailでCSVの最新行を確認できますか?
はい、できます。
CSVファイルの末尾1行を確認したい場合は、tail -n 1を使います。
tail -n 1 data.csv
tailで表示できない原因は何ですか?
対象ファイルが存在しない、ファイル名を間違えている、読み取り権限がない、文字コードが合っていない、などが考えられます。
まずはpwdとls -laで現在地とファイルの状態を確認しましょう。
まとめ
tailコマンドとは、Linuxでファイルの末尾部分を表示するための基本コマンドです。
基本的な使い方は、tailの後ろにファイル名を指定します。
tail sample.log
行数を指定しない場合、末尾10行が表示されます。
表示する行数を指定したい場合は、tail -nを使います。
tail -n 5 sample.log
末尾1行だけ確認したい場合は、tail -n 1を使います。
tail -n 1 sample.log
ログファイルをリアルタイムに確認したい場合は、tail -fを使います。
tail -f sample.log
tail -fを終了するには、Ctrl + Cを押します。
headはファイルの先頭部分を表示するコマンドです。
tailはファイルの末尾部分を表示するコマンドです。
catはファイル全体を表示し、lessはファイル全体をスクロールしながら確認できます。
Linux初心者は、まずtail、tail -n、tail -fを覚え、ログファイルやCSVファイルの最新部分を確認する操作に慣れていきましょう。





コメント