lessコマンド

テキストファイルを検索機能付きのスクロール可能なインターフェースで表示します。

概要

lessはターミナルページャープログラムで、テキストファイルを一度に1画面ずつ表示することができます。ファイル全体を一度に表示するcatとは異なり、lessは前後の移動、テキスト検索などのナビゲーション機能を提供します。特に大きなファイルをターミナルに負担をかけずに表示するのに便利です。

オプション

-N

各行の先頭に行番号を表示します。

$ less -N file.txt
      1 This is line 1
      2 This is line 2
      3 This is line 3

-i

大文字と小文字を区別しない検索を行います。このオプションを有効にすると、「text」を検索すると「text」、「Text」、「TEXT」などにマッチします。

$ less -i file.txt

-S

行の折り返しを無効にします。長い行は次の行に折り返されるのではなく、切り詰められ、水平スクロールが可能になります。

$ less -S file.txt

-F

ファイル全体が最初の画面に表示できる場合、自動的に終了します。

$ less -F short_file.txt

-R

ANSIカラーエスケープシーケンスをそのままの形で表示し、色付きテキストを適切に表示できるようにします。

$ less -R colored_output.txt

-X

lessを終了する際に画面をクリアせず、内容をターミナルに表示したままにします。

$ less -X file.txt

使用例

基本的なファイル表示

$ less /var/log/syslog
[スクロール可能なインターフェースでファイル内容が表示される]

コマンド出力の表示

$ ls -la | less
total 112
drwxr-xr-x  18 user  staff   576 May  5 10:23 .
drwxr-xr-x   5 user  staff   160 Apr 29 14:12 ..
-rw-r--r--   1 user  staff  8196 May  5 09:45 file1.txt
-rw-r--r--   1 user  staff  5423 May  4 16:32 file2.txt

圧縮ファイルの表示

$ zless compressed_file.gz
[スクロール可能なインターフェースで解凍された内容が表示される]

ナビゲーションコマンド

less内では、以下のキーボードコマンドが使用できます:

ヒント:

クイックナビゲーション用の位置マーク

mを押した後に任意の文字を押すと、現在の位置をマークできます。後で'(アポストロフィ)を押した後に同じ文字を押すと、その位置に戻ることができます。

成長するファイルの追跡

less +F file.logを使用して成長するファイルを追跡します(tail -fと同様)。Ctrl+Cを押すと追跡を停止し、通常のブラウジングモードに戻ります。Fを押すと追跡を再開します。

環境変数でエクスペリエンスをカスタマイズ

シェル設定でLESS="-R -i"を設定すると、それらのオプションを入力しなくても常に使用できます。

複数ファイルのナビゲーション

less file1 file2 file3で複数のファイルを開いた場合、:nで次のファイルに移動し、:pで前のファイルに移動します。

よくある質問

Q1. lessmoreの違いは何ですか?

A. lessmoreの改良版で、双方向スクロール、より優れた検索機能を持ち、表示前にファイル全体を読み込む必要がありません。

Q2. ファイル内のテキストを検索するにはどうすればよいですか?

A. /を押した後に検索語を入力してEnterを押します。nで次の出現箇所を、Nで前の出現箇所を見つけます。

Q3. 行番号を表示するにはどうすればよいですか?

A. less -N ファイル名を使用するか、lessでファイルを表示中に-Nを押します。

Q4. lessを終了するにはどうすればよいですか?

A. qを押して終了します。

Q5. lessでバイナリファイルを表示できますか?

A. lessはバイナリファイルを開くことができますが、テキスト用に設計されています。バイナリファイルの場合は、hexdumpxxdなどの専用ツールの使用を検討してください。

参考文献

https://www.greenwoodsoftware.com/less/

改訂履歴