ファイルの中身を表示するさまざまなコマンド
さて、viを使ってファイルを編集できるようになりましたが、次にファイルの中身を見るためのコマンドを学びましょう。「vi
コマンドで見ればよいのでは?」と思うかもしれませんが、vi
は基本的にファイルを編集するためのコマンドです。単にファイルの中身を確認したいときには別のコマンドで十分ですし、パイプやリダイレクト[1]を使用する場合には使いません。ここでは、そのようなファイルの中身を表示・閲覧する際に使えるコマンドを紹介します。
注
[1]: あるコマンドの標準出力を別のコマンドに渡したり、ファイルに出力したりする機能です。
catコマンド
ファイル内容を単純に表示させるときに使うのはcat
コマンドです。
# cat test.txt
ファイル名を引数に渡すと、そのファイルの中身が表示されます。長いファイルは、スクロールして最後まで表示されます。
headコマンド
一画面を超える長いファイルの先頭部分だけを読みたい場合、cat
コマンドでは先頭のほうがスクロールして消えてしまうため、うまくいきません。このような場合にはhead
コマンドを使います。
# head test.txt
こうすると先頭10行分のみが表示されます。先頭から指定した行数を読みたい場合には、-n
オプションを使って表示したい行数を指定します。例えば、
# head -n 7 test.txt
とすると、先頭7行分が表示されます。また、オプションのn
は省略可能で、head -5 test.txt
としても同様の結果になります。
tailコマンド
逆に、ファイルの末尾部分だけを読みたいときにはtail
コマンドを使います。
# tail test.txt
tail
コマンドも、表示行数を指定する-n
オプションが使えます(n
の省略も同様)。
また、tail
コマンドでは-f
オプションもよく使われます。-f
オプションを指定することで、引数に指定したファイルの末尾をリアルタイムで確認できるようになります。つまり、ファイルの末尾に何か追記があったときには、それがすぐに表示されるわけです。このオプションはログファイルの書き込みを確認するときなどに非常に便利ですので覚えておきましょう。
lessコマンド
head
やtail
のように部分的に表示するのではなく、全体を表示したいけれどもcat
のように一度に表示させたくない場合には、less
コマンドやmore
コマンドを使います。これらのコマンドはページャといい、画面内に収まらない行数のファイルでも、上下に移動して表示させることができます。
less test.txt