ファイル内容を表示するLinuxコマンド「less」、「more」、「cat」、「view」、「tail」の相違点

Linuxでファイル内容を表示するコマンドは、「less」、「more」、「cat」、「view」、「tail」が存在しますが、各コマンドの相違点と使い勝手が良いおすすめのコマンドを解説します。



ファイル参照コマンド「less」、「more」、「cat」、「view」、「tail」の相違点

最もおすすめなコマンドは「less」です。

「less」が最も動作が軽く、コマンドで出来ることも多いからです。

逆に「cat」は表示したい箇所を自由に選択できないことから、利用をおすすめできないコマンドです。

「less」ファイル内容を表示し、スクロールできる

  1. ファイル内容の表示は、lessコマンドだけで全て満たされる
  2. ファイル全体を読み込まずに起動するため、表示が早い
  3. 圧縮されたファイルの一覧を展開せずに表示できる

「view」viコマンドの参照専用モードで起動する

  1. viコマンドと類似しているが、viと違って参照専用(更新不可)モードで開く

「more」ファイルの中身を表示し、スクロールできて、行末まで表示するとコマンドが終了する

  1. ファイルの中身を1行目から1画面ずつ表示する

「tail」ファイルの最終行を含む数行だけを表示する

  1. ファイルの内容を最終行から10行表示する
  2. 最終行から何行表示するはオプションで変更できる
  3. 最終行付近のみ表示するため、「ファイルの内容を確認」にはあまり適さない

「cat」ファイルの中身を表示しながらスクロースするが、表示は途中で止まらずに行末まで表示するとコマンドが終了する

  1. ファイル内容を1行目から表示するが、行末まで表示が一気に進んでしまうため、実質的にファイル内容を確認することができない
  2. ファイルを複数指定して起動すると、ファイル内容を連結して表示はできるが、実質的にファイル内容を確認することができないため、catコマンドは利用しないことをおすすめする






利用シーン別に最適なファイル内容表示コマンド

実際の利用シーン別に、ファイル内容表示の最適なコマンドは下記の通りです。

基本的には「less」コマンドだけ利用すれば良い

テキストファイルの内容を表示するのは、常に「less」のみ利用すれば実運用に適応できます。

> less access.log

ログを常時監視して新規ログを表示するなら「tail」コマンドが最適

ログファイルは常に増えていきます。

ログファイルの増えた行、要するに最新行を常時監視したい場合は「tail」コマンドがおすすめです。

下記の通り、「tail -f」で入力すると、tailコマンドは[Ctrl]+[c]キーを押すまでログファイルを最新の状態で常に表示続けます。

> tail -f access.log