Linuxとコマンドラインの基礎
サーバのログファイル /var/log/app.log に後から追記される行を、追記されるたびに画面に表示し続けたい。適切なコマンドはどれか。
- Atail -f /var/log/app.log
- Bhead -n 10 /var/log/app.log
- Ccat /var/log/app.log
答えと解説を見る
正解:A. tail -f /var/log/app.log
tail はファイルの末尾の行(既定では10行)を表示するコマンドで、-f(follow)を付けると、表示した後も終了せずにファイルを見張り、追記された行をそのつど表示します。シミュレーションやジョブの進み具合をログで追うときによく使い、止めるときは Ctrl+C を押します。ログがローテーションで別の名前に変わる場合は、同じ名前の新しいファイルを追い続ける tail -F が便利です。head は先頭の行、cat は全体を1回だけ表示して終わります。
- A. 正しい。-f で、追記される行を表示し続けます。
- B. head -n 10 は先頭の10行を1回表示するだけで、追記は表示しません。
- C. cat はその時点の中身を1回表示して終わり、後からの追記は表示しません。