less -Pオプションの使い方を徹底解説!初心者でもわかるカスタムプロンプト設定方法
生徒
「Linuxのlessコマンドって便利ですけど、下の行に出るメッセージをもっと見やすくできませんか?」
先生
「できますよ。-Pオプションを使えば、自分でプロンプトの表示内容をカスタマイズできるんです。」
生徒
「それって、表示されるファイル名とか、行数の情報を好きなように設定できるってことですか?」
先生
「その通りです!詳しく説明していきましょう。」
1. lessコマンドとは?
less(レス)コマンドは、Linuxでファイルの中身をページ単位で表示するためのコマンドです。大量のログファイルやテキストデータをゆっくりスクロールしながら確認するのに適しています。
矢印キーやスペースキーで自由に移動でき、/を使えばキーワード検索も可能です。内容の確認・検索・スクロールに特化した便利ツールとして、多くのLinuxユーザーに使われています。
2. -Pオプションの基本
-Pオプションは、lessのプロンプト(下部に表示される案内メッセージ)を自分でカスタマイズできる機能です。
通常、lessでは「(END)」や「lines 1-50/100」などの情報が表示されますが、-Pを使えばその内容を自由に変更できます。
たとえば、「今表示しているファイル名」「行数」「現在位置」などを指定して表示できるので、読みやすく、分かりやすくなります。
3. 使用例:独自プロンプトを表示する
以下は、lessコマンドでプロンプトをカスタマイズする基本例です。
less -P"現在 %{LINENUM} 行目/全体 %{LINES} 行 : %f" sample.txt
この例では、画面の下に「現在 ○○ 行目/全体 ○○ 行 : ファイル名」のような表示になります。
%fはファイル名、%{LINENUM}は現在の行番号、%{LINES}は全体の行数を意味します。
4. よく使うプロンプト指定子一覧
-Pオプションで使える主な指定子(プレースホルダ)には、以下のようなものがあります。
%f:現在開いているファイル名%t:短縮されたファイル名%l:現在の行番号%L:全体の行数%pb:ファイル内での現在位置(パーセンテージ)%:パーセント記号(%%と書く)
これらを組み合わせて、読みやすい自分だけのプロンプトを作ることができます。
5. よくあるカスタムプロンプト例
以下はいくつかの使いやすいカスタムプロンプトの例です。
ファイル名と現在位置:
less -P"%f - 現在位置: %pb%%" log.txt
行数と割合を強調表示:
less -P"行: %l / %L (%pb%%) [%f]" log.txt
こうすることで、ログや設定ファイルを確認する際に、どこを読んでいるかが明確になります。
6. 日本語を含めたカスタマイズもOK
プロンプトの文中に日本語を入れることもできます。ただし、使用するターミナルやフォントによっては文字化けする可能性があるので注意が必要です。
less -P"読み込み中… %f [%pb%% 完了]" sample.txt
日本語を使えば、より直感的で親しみやすいプロンプトになります。
7. 常に設定する方法(環境変数の活用)
毎回-Pを入力するのが面倒な場合は、環境変数LESSに設定しておくのが便利です。
export LESS='-P%f[%l/%L行目 %pb%%]'
この設定をターミナルで実行すると、以後は常に指定したプロンプトでlessが動作します。
恒久的に設定したいときは、~/.bashrcや~/.zshrcにこの行を追記しましょう。
8. -Pと他の表示系オプションとの違い
lessには他にも表示に関係するオプションがいくつかあります。
-m:簡易ステータス行の表示-M:詳細ステータス行の表示-N:行番号を表示
これらと-Pの違いは、「自分で表示形式を自由に定義できるかどうか」です。
シンプルに済ませたいなら-mや-M、もっと自由にデザインしたいなら-Pという使い分けができます。