Home
473 words
2 minutes
【Unix】tailの解説
2025-02-24

最終更新:2025-02-24

概要#

tailコマンドは、ファイルや標準入力の末尾部分を表示するためのコマンドである。ログファイルの監視や後ろから数行だけを確認したい場合などに有用である。

使用方法は以下の通りである。

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

主なオプションとハンズオン#

1. -n (末尾からの行数指定)#

  • 機能: 指定した行数分を末尾から表示する。
  • 使用例:
    tail -n 5 sample.txt
    
    上記では、sample.txtの末尾5行を表示する。
  • 出力例:
    line6
    line7
    line8
    line9
    line10
    

2. -f (追尾表示)#

  • 機能: ファイルの末尾を表示しつつ、ファイルが更新されるたびに末尾を追尾して表示し続ける。
  • 使用例:
    tail -f logfile.log
    
    上記では、logfile.logの末尾を常に更新表示するため、ログ監視などに適している。
  • 出力例:
    ...(既存ログの末尾) 
    New log entry ...
    Another log entry ...
    

3. -c (末尾からのバイト数指定)#

  • 機能: 指定したバイト数分を末尾から表示する。
  • 使用例:
    tail -c 30 sample.txt
    
    上記では、sample.txtの末尾30バイトを表示する。マルチバイト文字が含まれる場合は注意が必要である。
  • 出力例:
    (ファイル末尾30バイト分の文字列)
    

4. -q (ファイル名を非表示)#

  • 機能: 複数ファイルを指定した際に、各ファイルの見出しを表示しない。
  • 使用例:
    tail -q -n 3 file1.txt file2.txt
    
    上記では、file1.txtfile2.txtの末尾3行を連続して表示するが、ファイル名は表示しない。
  • 出力例:
    file1_line3
    file1_line4
    file1_line5
    file2_line3
    file2_line4
    file2_line5
    

5. -v (ファイル名を常に表示)#

  • 機能: 出力の前に必ずファイル名(見出し)を表示する。
  • 使用例:
    tail -v -n 3 sample.txt
    
    上記では、常にsample.txtというファイル名を見出しとして表示してから、末尾3行を出力する。
  • 出力例:
    ==> sample.txt <==
    line8
    line9
    line10
    
【Unix】tailの解説
https://ss0832.github.io/posts/20250224_tail_command_guide/
Author
ss0832
Published at
2025-02-24