こんにちは、たねやつです。
このシリーズでは、Linuxの基本的なコマンドを一つずつ取り上げ、その使い方を具体的な例とともに解説していきます。今回は、長いファイルの内容を快適に閲覧するためのビューア、lessコマンドです。
lessコマンドとは?
lessコマンドは、catコマンドのようにファイル内容を表示しますが、一度に全内容を表示するのではなく、1画面ずつ表示してくれるページャー(pager)と呼ばれるプログラムです。catでは長すぎてスクロールが大変なログファイルや、巨大なソースコードなどを閲覧するのに適しています。moreという類似コマンドよりも高機能であるため、「less is more」という言葉遊びでも知られています。
主な操作キー
lessの実行中は、以下のキーボードショートカットで操作します。
| キー | 説明 |
|---|---|
Space or f |
1画面分、下(前方)にスクロールします。 |
b |
1画面分、上(後方)にスクロールします。 |
j or Enter |
1行分、下(前方)にスクロールします。 |
k |
1行分、上(後方)にスクロールします。 |
/ + [文字列] |
指定した文字列を前方に向かって検索します。 |
? + [文字列] |
指定した文字列を後方に向かって検索します。 |
n |
次の検索結果に移動します。 |
N |
前の検索結果に移動します。 |
gg |
ファイルの先頭に移動します。 |
G |
ファイルの末尾に移動します。 |
q |
lessを終了します。 |
主なオプション
| オプション | 説明 |
|---|---|
-N |
各行に行番号を表示します。 |
-S |
長い行を折り返さずに、水平スクロールで表示します(左右の矢印キーでスクロール)。 |
-i |
検索時に大文字と小文字を区別しません。 |
+[行番号] |
ファイルを開いたときに、指定した行番号から表示を開始します。 |
具体的な使用例
状況1: 長大なログファイルの内容を確認したい
システムのログファイル/var/log/syslogは非常に長いため、catで開くと一瞬で流れてしまいます。これをlessで開いてじっくり確認したい場面です。
less /var/log/syslog
ファイルが1画面ずつ表示され、スペースキーや矢印キーで自由にスクロールして内容を確認できます。qキーで終了します。
状況2: ソースコードを行番号付きで、折り返さずに見たい
横に長いコードがあるプログラムファイルmy_program.cを、行番号を付けて、かつ長い行は折り返さずにそのままの形で確認したい場面です。
less -N -S my_program.c
行番号が表示され、長すぎる行は画面の右端で切れ、左右の矢印キーでスクロールして見ることができます。
状況3: ファイル内の特定のエラーメッセージを検索したい
ログファイルの中でERRORという単語が含まれる箇所を探したい場面です。
less my_app.log
lessでファイルを開いた後、/キーに続けてERRORと入力し、Enterキーを押し��す。
/ERROR
最初に見つかったERRORの箇所にジャンプします。nキーを押すごとに、次のERRORに移動できます。
最後に
今回はlessコマンドについて解説しました。ターミナルでファイル内容を確認する際の必須コマンドです。特にログの調査などでは、その強力な検索機能とスクロール機能が大きな助けとなります。man lessでさらに多くの機能を発見できますので、ぜひ一度ご覧ください。