Provided by: manpages-ja_0.5.0.0.20210215+dfsg-1_all
名前
less - more の反対 (more のようなページャー)
書式
less -? less --help less -V less --version less [-[+]aBcCdeEfgGiImMnNqQrsSuUVWwX] [-b bufs] [-h lines] [-j line] [-k keyfile] [-{oO} logfile] [-p pattern] [-P prompt] [-t tag]" [-T tagsfile] [-x tab] [-y lines] [-[z] lines] [+[+]cmd] [--] [filename]... (長いオプション名を使う別の書式については、 オプションのセクションを参照すること。)
説明
less は more (1) と同様なプログラムであるが、 ファイル内での前方移動と同様に後方移動も可能 となっている。 また、 less は起動時に入力ファイル全体を読み込む必要がないため、 大きな入力 ファイルの場合には vi (1) のようなテキストエディタより起動が速い。 less は termcap (システ ムによっては terminfo) を使用するため、 多くの端末で実行できる。 ハードコピー端末では、ま だサポートが限定されている (ハードコピー端末では、画面の一番上に表示されるべき行に キャ レット (^) が付く)。 コマンドは more と vi の両方を基本にしている。 (以下の説明において N で表す) 10 進数の後に 続けて使用できるコマンドもある。
コマンド
以降の説明で ^X は control-X を意味する。 ESC は ESCAPE キーである。例えば、ESC-v は "ESCAPE" を押した後に "v" を 押すという意味である。 h または H ヘルプ。コマンドの概要を表示する。 もし、他のコマンドを忘れた時は、このコマンドを思 い出すこと。 SPACE または ^V または f または ^F 前方に 1 ウインドウ分 (N 行) 進む (-z オプションを参照)。 行数 N が画面サイズより大 きい場合は、 最後の行から画面に入りきる分だけを表示する。 警告: ^V が特殊なリテラル 化文字として使われているシステムもある。 z SPACE と似ているが、行数 N を指定すると N が新しいウインドウのサイズになる。 ESC-SPACE SPACE と似ているが、ファイルの終端に達した場合でも 画面いっぱいにスクロールする。 RETURN または ^N または e または ^E または j または ^J 前方に 1 行 (N 行) 進む。 N が画面サイズより大きい場合でも、N 行全てを表示する。 d または ^D 前方に半画面 (N 行) 進む。 行数 N を指定すると、その後の d コマンドと u コマンドの 新しいデフォルトサイズになる。 b または ^B または ESC-v 後方に 1 ウインドウ分 (N 行) 戻る (-z オプションを参照)。 N が画面サイズより大きい 場合は、 最後の行から画面に入りきる分だけを表示する。 w ESC-v と似ているが、N を指定すると、N が新しいウインドウのサイズになる。 y または ^Y または ^P または k または ^K 後方に 1 行 (N 行) 戻る。 N が画面サイズより大きい場合でも、N 行全てを表示する。 警 告: ^Y が特殊なジョブ制御文字として使われているシステムもある。 u または ^U 後方に半画面 (N 行) 戻る。 N を指定すると、その後の d コマンドと u コマンドの 新し いデフォルトサイズになる。 ESC-) または RIGHTARROW 画面を右方向に画面幅の半分 (N 文字分) スクロールする (-# オプションを参照)。 テキス トがスクロールしている間は、 (行を切り取る) -S オプションが有効になっているように動 作する。 文字数 N を入力する場合は、 右矢印キーが行編集コマンド (行編集のセクション を参照) で使われるため、 ESC-) を使用しなければならない。 ESC-( または LEFTARROW 画面を左方向に画面幅の半分 (N 文字分) スクロールする (-# オプションを参照)。 r または ^R または ^L 画面を再描画する。 R 画面を再描画し、バッファされた入力は破棄する。 ファイルを閲覧中に、ファイルが変更さ れた場合に有効である。 F 前方にスクロールし、ファイルの終端に達しても読み続ける。 通常このコマンドは、既に ファイルの終端に達している場合に使われる。 閲覧中に大きくなり続けるファイルの末尾を モニターすることができる ("tail -f" コマンドと同じような動作をする)。 g または < または ESC-< ファイルの第 1 行目 (第 N 行目) に移動する (警告: N が大きいと遅くなる)。 G または > または ESC-> ファイルの最終行 (第 N 行目) に移動する (警告: N が大きい場合や、N が指定されない場 合、 また、ファイルではなく標準入力を読み込んでいる場合に遅くなる)。 p または % ファイルの N パーセント目の位置に移動する。 N は 0 から 100 の間でなければならな い。 { 画面に表示されている先頭行に左中括弧がある場合、 { コマンドを使うと対応する右中括弧 の位置に移動する。 対応する右中括弧は画面の最終行に表示される。 2 つ以上の左中括弧 が画面の先頭行にある場合、 数字 N は第 N 個目の括弧を指定するために使われる。 } 画面に表示されている最終行に右中括弧がある場合、 } コマンドを使うと対応する左中括弧 の位置に移動する。 対応した左中括弧は画面の先頭行に表示される。 2 つ以上の右中括弧 が画面の最終行にある場合、 数字 N は第 N 個目の括弧を指定するために使われる。 ( { コマンドと似ているが、中括弧ではなく小括弧に適用される。 ) } コマンドと似ているが、中括弧ではなく小括弧に適用される。 [ { コマンドと似ているが、中括弧ではなく大括弧に適用される。 ] } コマンドと似ているが、中括弧ではなく大括弧に適用される。 ESC-^F 2 つの文字を続けて入力することで、{ コマンドと同様の動作をする。 2 つの文字はそれぞ れ開括弧と閉括弧として使われる。 例えば、"ESC ^F < >" を実行すると、 画面の先頭行に 表示されている < に対応する > に進むことができる。 ESC-^B 2 つの文字を続けて入力することで、} コマンドと同様の動作をする。 2 つの文字はそれぞ れ開括弧と閉括弧として使われる。 例えば、"ESC ^B < >" を実行すると、 画面の最終行に 表示されている > に対応する < に戻ることができる。 m 任意の小文字を続けて入力することで、現在の位置を入力した文字でマークする。 ' (シングルクォート)。 任意の小文字を続けて入力することで、以前この文字でマークした位 置に戻る。 もう 1 つのシングルクォートを続けることで、 シングルクォートコマンドで「 大きく」移動する前の位置に戻る。 ^, $ で、それぞれファイルの先頭行と最終行にジャン プする。 新しいファイルを読み込む場合も 前のファイルに付けたマークは保存されるの で、' コマンドは 入力ファイルの切替えに使うことができる。 ^X^X シングルクォートと同じ。 /pattern 前方にあるパターンにマッチする 1 番目 (N 番目) の行を検索する。 このパターンは ed で認識される正規表現である。 検索は、画面に表示されている第 2 行から始まる (変更す る場合は、-a と -j オプションを参照すること)。 パターンの前に置く文字のうち、いくつかは特殊文字となる。 これはパターンの一部として ではなく、検索方法を変更するために使われる。 ^N または ! パターンにマッチしない行を検索する。 ^E または * 複数のファイルを検索する。 つまり、検索がマッチしないまま現在のファイルの終 りに達した場合、 コマンドラインのファイルリストにある次のファイルに検索を続 行する。 ^F または @ 現在の画面表示や、-a または -j オプションの設定に関係なく、 コマンドラインの ファイルリストにある最初のファイルの先頭行から 検索を開始する。 ^K 現在の画面中でマッチする全てのパターンをハイライト表示する。 その際、一番始 めにマッチする位置へは移動しない (現在の位置を保持する)。 ^R 正規表現のためのメタキャラクタを解釈しない。 つまり、単純な文字列比較を行 う。 ?pattern 後方にあるパターンにマッチする 1 番目 (N 番目) の行を検索する。 検索は、画面の一番 上に表示されている行の前の行から行う。 / コマンドの時と同様に、一部の文字は特殊な役割をもつ。 ^N または ! パターンにマッチしない行を検索する。 ^E または * 複数のファイルを検索する。 つまり、検索がマッチしないまま現在のファイルの先 頭に達した場合、 コマンドラインのファイルリストにある前のファイルに検索を続 行する。 ^F または @ 現在の画面表示や、-a または -j オプションの設定に関係なく、 コマンドラインの ファイルリストにある最後のファイルの最終行から 検索を開始する。 ^K 前方検索の時と同じ。 ^R 前方検索の時と同じ。 ESC-/pattern "/*"と同じ。 ESC-?pattern "?*"と同じ。 n 前回の検索を繰り返す。 すなわち、前回使用した検索パターンにマッチする N 番目の行の 検索する。 前の検索が ^N で変更されている場合、 パターンにマッチしない N 番目の行を 検索する。 前の検索が ^E で変更されている場合、現在のファイルに条件を満たす行が な いときは次の (あるいは前の) ファイルで検索を続ける。 前の検索が ^R で変更されている 場合、正規表現を用いずに検索を行う。 前の検索が ^F または ^K で変更されている場 合、何の変化も起きない。 N 前回の検索を逆方向に行う。 ESC-n 複数のファイルがあるとき、 ファイルを越えて直前の検索を繰り返す。 前の検索が、* に よって変更された場合と同じ。 ESC-N 複数のファイルがあるとき、 ファイルを越えて逆方向に直前の検索を繰り返す。 ESC-u 検索結果のハイライトを元の状態に戻す。 現在の検索パターンにマッチした文字列のハイラ イトをオフにする。 もし既に、前の ESC-u コマンドによりハイライトがオフになっている 場合は、 検索コマンドの実行によってもハイライトはオンに戻る。 (-G オプションでもハ イライトをオフに切替えることができる。 この場合、検索コマンドでハイライトがオンにな らない)。 :e [filename] 新しいファイルを読み込む。 ファイル名の指定がない時は、コマンドラインのファイルリス トから 「現在の」ファイル (:n と :p コマンドを参照) を再度読み込む。 ファイル名の中 のパーセント記号 (%) は現在のファイル名で置き換えられる。 ファイル名の中のシャープ 記号 (#) は前に読み込んだファイル名で置き換えられる。 しかし、2 つ続けたパーセント 記号は、 単純に 1 つのパーセント記号に置き換えられる。 これは、パーセント記号を含む ファイル名を入力できるようにするためである。 同様に、2 つ続けたシャープ記号は、 単 純に 1 つのシャープ記号に置き換えられる。 このファイル名は、その後に続く :n コマン ドと :p コマンドで閲覧できるように、 コマンドラインのファイルリストに挿入される。 複数のファイル名を指定した場合は、全てをファイルのリストに加え、 最初のファイルを閲 覧する。 ファイル名が、1 個以上のスペースを含む場合、 ファイル名全体がダブルクォー トで囲まれていなければならない ("-" オプションを参照)。 ^X^V または E :e コマンドと同じ。 警告: ^V が特殊なリテラル化文字として使われているシステムもあ る。 そのようなシステムでは、^V を使うことはできない。 :n (コマンドラインで与えられたファイルリストから) 次のファイルを読み込む。 数字 N が指 定されている時は、次の N 番目のファイルを読み込む。 :p コマンドラインのファイルリストにある 1 つ前のファイルを読み込む。 数字 N が指定され ている時は、前の N 番目のファイルを読み込む。 :x コマンドラインのファイルリストにある一番最初のファイルを読み込む。 数字 N が指定さ れている時は、第 N 番目のファイルを読み込む。 :d 現在のファイルをファイルリストから取り除く。 = または ^G または :f 閲覧中のファイルについて、ファイル名・ 表示中の最終行の行番号・バイトオフセットと いった情報を表示する。 可能な場合には、ファイルの長さ・ファイルの行数・ 表示されて いる最終行までのパーセントも表示する。 - コマンドラインオプション文字 (下記のオプションを参照) のうちの 1 つを 続けて入力す ることで、 オプション設定を変更し、新しい設定を解説するメッセージを表示する。 ダッ シュのすぐ後に ^P (CONTROL-P) を入力すると、 オプションの設定は変更されるが、メッ セージを何も表示しない。 オプション文字が、(-b や -h などの) 数値変数や (-P や -t などの) 文字列変数の場合、 オプション文字の後に新しい値が入力できる。 値を入力しな かった場合、現在の設定を示すメッセージが 表示されるだけで設定は何も変わらない。 -- - コマンドと似ているが、1 文字のオプションではなく、 長いオプション名 (下記のオプ ションを参照) が使われる。 オプション名を打ち込んだ後にリターンを押す必要がある。 2 個目のダッシュのすぐ後に ^P を入力すると、- コマンドの場合と同じく、 新しい設定を説 明するメッセージを表示しない。 -+ コマンドラインオプション文字のうちの 1 つを続けて入力することで、 オプションをデ フォルト設定に戻して、新しい設定を表示する。 ("-+X" コマンドは、 コマンドラインで "-+X" とするのと同等である。) このコマンドは文字列の値を持つオプションには使えな い。 --+ -+ コマンドと似ているが、1 文字のオプションではなく、 長いオプション名が使われる。 -! コマンドラインオプション文字のうちの 1 つを続けて入力することで、 オプションをデ フォルト設定の「反対」にして、新しい設定を表示する。 このコマンドは数字あるいは文字 列の値を持つオプションには使えない。 --! -! コマンドと似ているが、1 文字のオプションではなく、 長いオプション名が使われる。 _ (アンダースコア)。 コマンドラインオプション文字のうちの 1 つを続けて入力すること で、 そのオプションの現在設定を表示する。 オプションの設定は変化しない。 __ (2 つのアンダースコア)。 _ (アンダースコア) コマンドと似ているが、 1 文字のオプショ ンではなく、長いオプション名が使われる。 オプション名を打ち込んだ後にリターンを押す 必要がある。 +cmd 新しいファイルを読み込むたびに、指定したコマンド cmd を毎回実行する。 例えば、+G を 実行すると less で各ファイルを開いた時に先頭からではなく終端から表示される。 V 現在起動している less のバージョンを表示する。 q または Q または :q または :Q または ZZ less を終了する。 以下の 4 つのコマンドが使用できるかは、インストールした方法に依存する。 v 現在閲覧しているファイルを編集するためエディタを起動する。 エディタとして、環境変数 VISUAL で定義されている値が用いられる。 VISUAL が定義されていない場合、環境変数 EDITOR の値が使われる。 VISUAL も EDITOR も定義されていない場合、"vi" がデフォルト になる。 プロンプトセクションの LESSEDIT に関する話題も参照すること。 ! shell-command 指定されたシェルコマンドを実行するため、シェルを起動する。 コマンド中のパーセント記 号 (%) は、現在のファイル名で置き換えられる。 コマンド中のシャープ記号 (#) は、前に 読み込んだファイル名で置き換えられる。 "!!" は、直前のシェルコマンドを繰り返す。 シェルコマンドを伴わない "!" は、単にシェルを起動する。 Unix では、シェルは環境変数 SHELL で設定されたものが使われる。 設定されていない場合、デフォルトは "sh" である。 MS-DOS と OS/2 では、シェルは通常のコマンドプロセッサである。 | <m> shell-command <m> は任意のマーク文字である。 入力ファイルのセクションを与えられたシェルコマンドに 渡す。 渡されるファイルのセクションは、現在の画面の一番上の行から 文字でマークされ た所までである。 ファイルの先頭行と最終行を示すために、<m> をそれぞれ ^ と $ にして もよい。 <m> が . または改行の場合、現在の画面が渡される。 s filename 入力をファイルに保存する。 このコマンドは入力が一般のファイルでなく、パイプの時のみ 有効である。
オプション
コマンドラインオプションを以下に説明する。 大部分のオプションは less の実行中に "-" コマン ドを用いて変更することが可能である。 大部分のオプションは、「ダッシュと 1 文字のオプション」または 「2 つのダッシュと長いオプ ション名」のどちらかの形式で指定される。 長いオプション名は、他のものと区別がつく限り省略 できる。 例えば、--quit-at-eof は --quit と省略できるが、 --qui のように省略することはでき ない。 なぜなら、--quit-at-eof と --quiet が --qui で始まっているからである。 大文字のオプ ション名もある。 例えば、--QUIT-AT-EOF のようなものがあり、--quit-at-eof とは区別される。 このようなオプション名は、始めの文字を大文字にするだけでよく、 それ以降の文字は大文字でも 小文字でも構わない。 例えば、--Quit-at-eof は --QUIT-AT-EOF と等しい。 環境変数 "LESS" の値もオプションとして使われる。 例えば、 less を起動するたびに "less -options ..." とタイプするのを避けるために、 csh では、 setenv LESS "-options" もし、 sh を使っているならば、 LESS="-options"; export LESS とすればよい。 MS-DOS では、クォーテーションは必要ないが、オプション文字列中の パーセント 記号を 2 つのパーセント記号に置き換える必要がある。 環境変数はコマンドラインより先に解析されているので、 コマンドラインオプションは環境変数 LESS を上書きする。 もし、あるオプションが環境変数 LESS にあっても、 コマンドラインオプ ション "-+" で起動すれば、 そのオプションをデフォルトの値にリセットすることができる。 -P や -D オプションのように文字列を後に続けるオプションでは、 文字列の終りの印としてダラー 記号 ($) を使わなくてはならない。 例えば、MS-DOS で 2 つの -D オプションを設定する場合は、 次のように間にダラー記号を入れなくてはならない。 LESS="-Dn9.1$-Ds4.1" -? または --help このオプションは、 less が受け付けるコマンドの概要を表示する (h コマンドと同じ)。 (使用しているシェルが ? をどのように解釈するかにより、 "-\?" というように ? を " で 囲む必要があるかもしれない。) -a または --search-skip-screen 画面に表示されている最終行の次の行から検索を開始する。 つまり、現在画面に表示されて いる行中の検索は行わない。 デフォルトでは、検索は画面中の第 2 行目 (もしくは最後に 検索対象が見つかった行のあと。-j オプションを参照) から行われる。 -bn または --buffers=n less が各ファイルに対して使うバッファの数を指定する。 各バッファは 1KB で、 各ファ イルに対してデフォルトでは 10 個のバッファを使う (ただし、ファイルがパイプの場合は 例外である。-B オプションを参照)。 数字 n で使用するバッファの数を指定する。 -B または --auto-buffers データがパイプから読み込まれる場合、 デフォルトではバッファは必要に応じて動的確保さ れる。 そのため、大容量のデータがパイプから読み込まれる場合、 多くのメモリが確保さ れてしまう。 -B オプションが指定されると、-b オプションで指定されたバッファの数を 使うため、パイプに対するバッファの動的確保が行われない。 警告: -B オプションを使っ た場合、ファイルの最も最近閲覧している 部分のみしかメモリに保持されず、以前のデータ が無くなっているため、 表示にエラーが起こる場合もある。 -c または --clear-screen 全画面の再描画を、先頭行から下に向かって行わせるようにする。 デフォルトでは、 全画 面の再描画は、画面の最終行からのスクロールによって行われる。 -C または --CLEAR-SCREEN -C オプションは、-c オプションと似ているが、 再描画を行う前に画面をクリアする。 -d または --dumb -d オプションは、端末がダムである場合に 通常表示されるエラーメッセージの表示させな い。 ダムとは、画面のクリア、後方へのスクロールといった重要な機能がないことをいう。 もしそれらの機能がある場合は、-d オプションでもダム端末上での less の動作は変更され ない。 -Dxcolor または --color=xcolor [MS-DOS のみ] 表示されるテキストの色を設定する。 x は設定するテキストのタイプを表す 文字である。 n は標準、s は標準出力、d は太字、u は下線、k は点滅である。 color は、ピリオドで区切られた数値の組である。 1 つ目の数値で文字の前景色、2 つ目の数値で 文字の背景色を選ぶ。 数値 N は、N.0 と同じである。 -e または --quit-at-eof ファイルの終りに 2 度目に達した場合、自動的に less を終了させる。 デフォルトでは、 less を終了させる唯一の方法は、"q" コマンドである。 -E または --QUIT-AT-EOF ファイルの終りに 1 度目に達した場合、自動的に less を終了させる。 -f または --force 通常のファイルでないものを強制的に開かせる (通常のファイルでないものとは、ディレク トリまたは デバイススペシャルファイルのことである)。 また、バイナリファイルを開く場 合の警告メッセージも表示しない。 デフォルトでは、 less は、通常のファイルでないもの を開かない。 -F または --quit-if-one-screen 最初の画面でファイル全体が表示できる場合、 less を自動的に終了させる。 -g または --hilite-search 通常、 less は、前回の検索とマッチする画面中全ての文字列をハイライト表示する。 -g オプションは、前回の検索にマッチした文字列のみを ハイライト表示するように変更する。 このオプションは、 less の動作をデフォルトより多少速くする。 -G または --HILITE-SEARCH -G オプションは、検索コマンドで見つかった文字列をハイライト表示させない。 -hn または ---max-back-scroll=n 後方に戻る最大行数を指定する。 もし、n 行を上回って後方に戻る必要がある場合は、 代 わりに画面が前方に再描画される (端末が後方に戻る機能を持たない場合は、-h0 を意味す る)。 -i または --ignore-case 大文字小文字の区別をせず、大文字と小文字は同一とみなして検索をする。 このオプション は、検索パターンに大文字が含まれていた場合には無視される。 つまり、検索パターンに大 文字が含まれていた場合、 大文字小文字の区別をした検索をする。 -I または --IGNORE-CASE -i コマンドと似ているが、検索パターンが大文字を含んでいた場合でも、 検索は大文字小 文字の違いを無視して検索をする。 -jn または --jump-target=n 「ターゲット」行とする画面上の行番号を指定する。 ターゲット行とは、テキスト検索、タ グ検索、行番号へのジャンプ、 ファイルのパーセンテージでのジャンプ、マーク位置への ジャンプ、 の対象となる行である。 画面の行は数字 n で指定する。 画面の一番上の行を 1、その次の行を 2、...、と表す。 画面の最終行から何行目かを指定する場合は、数値を負 に指定する。 画面の一番下の行は -1、下から 2 行目は -2、...、と指定する。 -j オプ ションが用いられている時、検索はターゲット行の直後の行から始まる。 例えば、"-j4" の とき、ターゲット行は画面の第 4 行目なので、 検索は画面の第 5 行目から始まる。 -J または --status-column ステータス欄を画面の左端に表示する。 ステータス欄は、-w または -W オプションが有効 なときのみ使われる。 -kfilename または --lesskey-file=filename lesskey (1) ファイルとして、指定したファイルを less に開かせて処理させる。 複数の -k オプションを指定してもよい。 環境変数 LESSKEY または LESSKEY_SYSTEM が設定された 場合、もしくは、 lesskey ファイルが標準位置 (「キー割り当て」セクションを参照) に 見つかった場合、それも lesskey ファイルとして使われる。 -m または --long-prompt less に、(more のように) 詳細なパーセント表示のプロンプトを出させる。 デフォルトで は、 less は、コロンをプロンプトとして表示する。 -M または --LONG-PROMPT more より、さらに詳細なプロンプトを less に出させる。 -n または --line-numbers 行番号を表示させない。 (行番号を表示する) デフォルトの設定では、 特に、入力ファイル が非常に大きな場合に less の動作が遅くなることがある。 -n オプションで行番号非表示 にすることで、この問題を避けられる。 行番号の使用とは「プロンプトと = コマンドで行 番号が表示され、 v コマンドで現在の行番号がエディタに渡される」ということである (「 プロンプト」セクションにおける LESSEDIT に関する話題を参照すること)。 -N または --LINE-NUMBERS 画面の各行の先頭に行番号を表示する。 -ofilename または --log-file=filename less の入力ファイルを指定した名前のファイルにコピーし閲覧する。 このオプション は、入力ファイルが一般のファイルではなく、 パイプである場合にのみ適用される。 ファ イルが既に存在する時は、上書きする前に less が確認を求める。 -Ofilename または --LOG-FILE=filename -O オプションは -o に似ているが、 既にあるファイルを確認することなく上書きする。 ログファイルが指定されてない場合、 -o と -O オプションは、 less のなかで、ログファ イルを指定するために使うことができる。 ファイル名を指定しない時は、単にログファイル 名を表示するだけである。 "s" コマンドは、 less で、-o を指定するのと同じである。 -ppattern または --pattern=pattern コマンドラインでの -p オプションは、 +/pattern を指定するのと同じである。つまり、 ファイル中で pattern が最初に現れるところを less の第 1 行目として表示する。 -Pprompt または --prompt=prompt 3 つのプロンプトのスタイルを好みによって調整する方法を提供する。 このオプションは通 常、 less コマンドを呼び出すたびに打ち込んだりせずに、 環境変数 LESS で指定する。 そのようなオプションは、環境変数 LESS の中で 最後のオプションになっているか、 もし くは、ダラー記号で終了していなければならない。 -Ps の後に文字列を続けるオプション は、デフォルトの (短い) プロンプトを その文字列に変更する。 -Pm は中間の (-m) プロ ンプトを変更する。 -PM は長い (-l) プロンプトを変更する。 -Ph はヘルプ画面のプロン プトを変更する。 -P= は = コマンドで表示されるメッセージを変更する。 全てのプロンプ トの文字列は、 文字列と特別なエスケープシーケンスから構成される。 詳細は「プロンプ ト」セクションを参照すること。 -q または --quiet または --silent 比較的「静かな」操作にする。 スクロールでファイルの終りを過ぎようとした場合や、 ファイルの始まりより前に行こうとした場合でも、 端末でベルを鳴らさない。 端末に「ビ ジュアルベル」がある場合は、代わりにそれを使う。 不正な文字を打った場合のような、そ の他のエラーに関してはベルを鳴らす。 デフォルトでは、全てのエラーに関して端末のベル が鳴る。 -Q または --QUIET または --SILENT 完全に「静かな」操作にする。 端末のベルは全く鳴らない。 -r または --raw-control-chars 「そのままの」制御文字を表示させるようにする。 デフォルトでは、制御文字をキャレット 表記を使って表示する。 例えば、control-A (8 進数 001) は "^A" と表示される。 警告: -r オプションが指定されると、 less は (制御文字のタイプにどのように画面が反応するか に依存しているために) 画面の実際の状況の経過を追うことができない。 よって多くの場 合、長い行が誤った位置で分割されてしまうといった問題が生じる。 -R または --RAW-CONTROL-CHARS -r と似ているが、可能な場合には画面表示を正しく維持しようとする。 このオプションが 有効なのは、入力が通常のテキストの場合である。 入力には ANSI の「カラー」エスケープ シーケンスが含まれていてもよい。 このシーケンスは ESC [ ... m のような形式で、"..." は "m" 以外の 0 個以上の文字である。 画面の状況を保つため、 全ての制御文字と ANSI カラーシーケンスは カーソルを移動させないと仮定している。 less に "m" 以外の文字を ANSI カラーエスケープシーケンスの終了文字として認識させる こともできる。 そのためには、認識させたい終了文字のリストを 環境変数 LESSANSIENDCHARS に設定すればよい。 -s または --squeeze-blank-lines 連続した空白行を、1 行の空白行にまとめる。 nroff の出力を閲覧するときに役立つ。 -S または --chop-long-lines 画面幅より長い行を折り返さずに切ってしまう。 つまり、長い行の残りの部分を単純に捨て てしまう。 デフォルトでは長い行を折り返すので、残りが次の行に表示される。 -ttag または --tag=tag -t オプションの後にはタグ名が続き、そのタグを含むファイルを編集する。 このオプショ ンを使うためには、 ctags (1) コマンドであらかじめ作られた "tags" と呼ばれる ファイ ルが現在のディレクトリになければならない。 このオプションは、 新しいファイルを読み 込む場合に less のなかで (- コマンドを用いて) 指定することもできる。 コマンド ":t" は、 less 中で、-t を指定するのと同じである。 -Ttagsfile または --tag-file=tagsfile "tags" の代わりに使用するタグファイル名を指定する。 -u または --underline-special バックスペースとキャリッジリターンを印刷可能文字として扱う。 つまり、これらが入力に 現れた場合は端末に送られる。 -U または --UNDERLINE-SPECIAL バックスペース、タブ、キャリッジリターンを制御文字として扱う。 つまり、これらの文字 は -r オプションで指定されたものとして扱う。 デフォルトで -u と -U のどちらも指定されていない場合、 下線文字の隣にあるバックス ペースは特別な扱われ方をする。 下線された文字は、端末のハードウェア下線機能を使って 表示される。 さらに、同一の 2 文字の間にあるバックスペースも特別な扱われ方をする。 重ね打ちされた文字が端末のハードウェア太字機能を使って表示される。 その他の文字に続 くバックスペースは削除される。 その他のキャリッジリターンは -r オプションで指定され たように扱われる。 -u と -U のどちらも有効でない場合に、 重ね打ち、もしくは、下線さ れた文字が検索される。 -V または --version less のバージョンナンバーを表示する。 -w または --hilite-unread 前方に 1 ページ進んだ場合、最初の「新しい」行を一時的にハイライト表示する。 最初の 「新しい」行は、前の画面の最下行の次の行である。 g または p コマンドの対象となった 行もハイライトする。 ハイライトは、移動させる次のコマンドがあったときに消される。 ステータス行だけをハイライトさせる -J オプションが有効でない限り、 行全体がハイライ トされる。 -W または --HILITE-UNREAD -w と似ているが、前方に 2 行以上移動した場合に 最初の新しい行を一時的にハイライトす る。 -XXX または --mark-wrong-char 表示できない誤った文字を表示するために、 マーク文字 (〓) が使われるようにする。 デ フォルトでは、そのような表示できない誤った文字は、バイナリとして表示される。 -xn または --tabs=n タブストップを n 文字に設定する。 n のデフォルトは 8 である。 -X または --no-init 端末に、termcap 初期化文字列と非初期化文字列を送れないようにする。 これは、画面をク リアするときのように非初期化文字列が不必要な場合には、 望ましいことがある。 -yn または --max-forw-scroll=n 前方に進む最大行数を指定する。 もし、n 行を上回って前方に進む必要がある場合は、 代 わりに画面が再描画される。 もし必要であれば、-c と -C オプションは 画面の先頭から再 描画するために使われる。 デフォルトでは、前方移動はスクロールになる。 -[z]n または --window=n スクロールするウインドウのデフォルトの大きさを n 行に変更する。 デフォルトは 1 画面 分の行数である。 z と w コマンドはウインドウの大きさを変更するために使われる。 z は、 more との移植性のために省略してもよい。 n が負の数の時は、現在の画面サイズより n 行小さくウインドウサイズを設定することを意味している。 例えば、画面サイズが 24 行 の場合、-z-4 はスクロールする ウインドウを 20 行に設定することを意味している。 さら に、画面サイズが 40 行に変更された場合には、 自動的にスクロールウインドウは 36 行に 変更される。 -"cc or --quotes=cc ファイル名を引用する文字を変更する。 このオプションは、スペースとダブルクォーテー ションマークの両方を含む名前を ファイルに付けようとする場合に必要となる。 -" の後に 1 文字を置いた場合、引用文字が指定した 1 文字に変更される。 このとき、スペースを含 むファイル名はダブルクォーテーションではなく、 この 1 文字で囲まれる。 また、-" の 後に 2 文字を置いた場合、 1 文字目が開クォーテーションで、2 文字目が閉クォーテー ションになる。 このとき、スペースを含むファイル名の前には開クォーテーション文字を付 け、 ファイル名の後には閉クォーテーション文字を付ける。 引用文字を変更した後で も、このオプションは -" (ダッシュの後にダブルクォーテーション) であることに注意する こと。 -~ または --tilde 通常、ファイルの終端より後の行は 1 個のチルダ (~) を使って表示される。 このオプショ ンを使うと、ファイルの終り以降の行は空行として表示される。 -# または --shift RIGHTARROW と LEFTARROW コマンドで水平方向にスクロールするときの デフォルトの移動桁 数を指定する。 この値を 0 にすると、デフォルトの値は画面幅の半分になる。 -- コマンドライン引き数 "--" は、オプション引き数の終りの印である。 この後の、いかなる 引き数もファイル名として解釈される。 このオプションは、名前が"-" または "+" で始ま るファイルを閲覧する場合に役立つ。 + あるコマンドラインオプションが + で始まる場合、 その残りは、 less の初期化コマンド として渡される。 例えば、+G では、ファイルの先頭ではなく終端を表示して less を起動 させる。 そして、オプション +/xyz では、 ファイル中で "xyz" が始めて現れる場所から 起動させる。 特殊な場合として、+<number> は +<number>g と同じ働きをする。 つま り、このオプションでは指定された行数から表示が始まる (しかし、上の "g" コマンドの注 意書きを参照すること)。 オプションが ++ で始まっている場合、初期化コマンドは 閲覧し ている一番始めのファイルだけでなく、全てのファイルに対して適用される。 以前説明した "+" コマンドも、 全てのファイルに対する初期化コマンドの設定 (および変更) に使われ る。
ラインエディット
画面の一番下で (例えば、:e コマンドのファイル名や、 検索コマンドのパターンといった) コマン ドライン入力の場合、 いくつかキーがコマンドラインを編集するのに使われる。 大部分のコマンド には、[ 大括弧 ] 中の別形式がある。 これは、ある種のキーボードでキーが存在しない場合に使用 できる (大括弧の中の形式は、MS-DOS 版では機能しない)。 それらの特殊キーは、^V や ^A といっ た「リテラル化」文字を先に入力することで、 そのままの文字として入力することができる。 2 つ のバックスラッシュを入力することで、 バックスラッシュ自身も文字として入力することができ る。 LEFTARROW [ ESC-h ] カーソルを 1 文字分左へ移動する。 RIGHTARROW [ ESC-l ] カーソルを 1 文字分右へ移動する。 ^LEFTARROW [ ESC-b または ESC-LEFTARROW ] (CONTROL と LEFTARROW を同時に入力すると) カーソルを 1 単語分左へ移動する。 ^RIGHTARROW [ ESC-w または ESC-RIGHTARROW ] (CONTROL と RIGHTARROW を同時に入力すると) カーソルを 1 単語分右へ移動する。 HOME [ ESC-0 ] カーソルを行頭へ移動する。 END [ ESC-$ ] カーソルを行末へ移動する。 BACKSPACE カーソルの左にある文字を消去する。 コマンドラインが空の場合は、コマンドをキャンセル する。 DELETE または [ ESC-x ] カーソルの下にある文字を消去する。 ^BACKSPACE [ ESC-BACKSPACE ] (CONTROL と BACKSPACE を同時に入力すると) カーソルの左にある単語を消去する。 ^DELETE [ ESC-X または ESC-DELETE ] (CONTROL と DELETE を同時に入力すると) カーソルの下にある単語を消去する。 UPARROW [ ESC-k ] (ヒストリにある) 前のコマンドラインを呼び出す。 DOWNARROW [ ESC-j ] (ヒストリにある) 次のコマンドラインを呼び出す。 TAB カーソルの左にある部分的なファイル名を補完する。 複数のマッチするファイル名がある時 は、 最初にマッチしたファイル名がコマンドラインに出される。 TAB を繰り返し打つ と、マッチしたファイル名が順番に表示される。 補完したファイル名がディレクトリの場 合、"/" がファイル名に付加される (MS-DOS では、"\" が付加される)。 ディレクトリ名に 付加する文字の指定するために、 環境変数 LESSSEPARATOR を使うことができる。 BACKTAB [ ESC-TAB ] TAB と同様であるが、マッチしたファイル名を逆順に表示する。 ^L カーソルの左にある部分的なファイル名を補完する。 複数のマッチするファイル名がある時 は、 全てのマッチしたファイル名が入力される。 ^U (Unix) または ESC (MS-DOS) コマンドライン全体を消去する。 コマンドが空の場合は、コマンドをキャンセルする。 Unix において、一行消去のための文字を ^U 以外に変更している場合、 その文字が ^U の 代わりに使われる。
キー割り当て
lesskey ファイルを生成する lesskey (1) というプログラムを用いて、独自の less コマンドを定 義できる。 このファイルは、コマンドキーとそれに関係づけられたアクションを指定する。 ライン エディットキー (「ラインエディット」セクションを参照) の変更や 環境変数の設定のために lesskey を使うこともできる。 環境変数 LESSKEY が設定されている場合、 less は lesskey ファ イル名としてその値を使う。 設定されていない場合、 less は、標準の位置にある lesskey ファイ ルを探す。 Unix の場合、 less は "$HOME/.less" というファイルを探す。 MS-DOS と Windows の 場合、 less は "$HOME/_less" という lesskey ファイルを探す。 存在しない場合は、環境変数 PATH で指定されている全てのディレクトリの下にある "_less" という lesskey ファイルを探す。 OS/2 の場合、 less は "$HOME/less.ini" という lesskey ファイルを探す。 存在しない場合 は、環境変数 INIT で指定されている全てのディレクトリの下にある "less.ini" ファイルを探す。 それでもない場合は、環境変数 PATH で指定されている全てのディレクトリの下にある "less.ini" ファイルを探す。 詳細は lesskey のマニュアルページを参照すること。 キー割り当てを提供するために、 システム共通の lesskey ファイルを設定することもできる。 ローカルな lesskey ファイルとシステム共通の lesskey ファイルの両方で キーが定義された場 合、ローカルなファイルにあるキー割り当ての方が システム共通のキー割り当てより優先される。 環境変数 LESSKEY_SYSTEM が設定されると、 less はそれをシステム共通の lesskey ファイルの名 前として使う。 この環境変数が設定されていない場合、 less は次に示す場所を標準的なシステム 共通の lesskey ファイルの場所として探す。 Unix では、システム共通の lesskey ファイルは /usr/local/bin/.sysless である。 (しかし、 less バイナリ用ディレクトリが /usr/local/bin と は異なる場所にビルドされていた場合、 そのディレクトリに .sysless ファイルがある。) MS-DOS と Windows では、システム共通の lesskey ファイルは c:\_sysless である。 OS/2 では、システ ム共通の lesskey ファイルは c:\_sysless.ini である。
入力プリプロセッサ
less のための「入力プリプロセッサ」を定義することができる。 less がファイルを開く前に、入 力プリプロセッサで 入力ファイルの内容の表示の仕方を変更することができる。 入力プリプロセッ サに渡される。 入力プリプロセッサは、ファイルの内容を 代替ファイルと呼ばれる別ファイルに書 き出す 単純な実行可能プログラム (もしくは、シェルスクリプト) である。 代替ファイルの内容が オリジナルファイルの内容の代わりに表示される。 しかし、ユーザーにとってはオリジナルファイ ルが開かれているかのように見える。 less は現在の代替ファイルの名前としてオリジナルファイル の名前を表示する。 入力プリプロセッサは、ユーザーによって入力される オリジナルファイル名を 1 つのコマンドライ ン引き数として受け付ける。 そして、代替ファイルを生成し終えると、代替ファイル名を標準出力 に表示する。 入力プリプロセッサが代替ファイル名を出力しない場合、 less は標準としてオリジ ナルファイルを用いる。 入力プリプロセッサは、標準入力を閲覧する場合には呼び出されない。 入 力プリプロセッサを設定するためには、 入力プリプロセッサを呼び出すコマンドラインを環境変数 LESSOPEN に設定する。 このコマンドラインには、入力プリプロセッサコマンドが呼び出されるとき に、 ファイル名に置き換えられる文字列 "%s" を含んでいなければならない。 less がそのようにして開いたファイルを閉じる時には、 入力ポストプロセッサと呼ばれるもう1つ のプログラムが呼び出される。 このプログラムは、(LESSOPEN で開かれた代替ファイルを消去する といった) 全ての必要な後処理をする。 このプログラムは、ユーザーによって入力されたオリジナ ルファイル名と 代替ファイル名の 2 つを引き数として受け付ける。 入力ポストプロセッサを設定 するためには、 入力ポストプロセッサを呼び出すコマンドラインを環境変数 LESSCLOSE に設定す る。 入力ポストプロセッサコマンドはファイル名に置き換えられる 文字列 "%s" を 2 つ含んでい る。1 つ目はファイルのオリジナルの 名前に置き換えられ、2 つ目は LESSOPEN の出力である 代替 ファイルの名前に置き換えられる。 例えば、次の 2 つのスクリプトにより、多くの Unix システムでは、 圧縮されているファイルを展 開せずに less でファイルを閲覧することができる。 lessopen.sh: #! /bin/sh case "$1" in *.Z) uncompress -c $1 >/tmp/less.$$ 2>/dev/null if [ -s /tmp/less.$$ ]; then echo /tmp/less.$$ else rm -f /tmp/less.$$ fi ;; esac lessclose.sh: #! /bin/sh rm $2 このスクリプトを使うためには、2 つを実行可能な場所に置き、 LESSOPEN="lessopen.sh %s", LESSCLOSE="lessclose.sh %s %s" というように環境変数を設定する。 他の圧縮ファイルを受け付け るような、 更に複雑な LESSOPEN と LESSCLOSE スクリプトを書くことも可能である。 ファイルのデータを代替ファイルに書き出さず、そのまま、 less にパイプするような入力プリプロ セッサを設定することも可能である。 こうすることにより、閲覧する前に圧縮ファイル全体を展開 するのが避けられる。 このような働きをする入力プリプロセッサは、入力パイプと呼ばれる。 入力 パイプは、代替ファイル名を標準出力に表示する代わりに、 代替ファイルの内容全てを標準出力に 書き出す。 入力パイプが標準出力に何も書き出さない場合、代替ファイルは生成されず、 less は 普通にオリジナルファイルを使う。 入力パイプを使う場合は、 入力プリプロセッサが入力パイプで あることを知らせるために、 環境変数 LESSOPEN の最初の文字を、縦棒 (|) に設定する。 例えば、多くの Unix システムで、 次のスクリプトは上で説明したサンプルスクリプトと同じ働き をする。 lesspipe.sh: #! /bin/sh case "$1" in *.Z) uncompress -c $1 2>/dev/null ;; esac このスクリプトを使うためには、実行可能な場所に置いて、 LESSOPEN="| lesspipe.sh %s" と設定 する。 入力パイプが使われる場合も、ポストプロセッサ LESSCLOSE を使っても良いが、 削除する 代替ファイルがないので多くの場合必要ない。 このスクリプトで、LESSCOLSE のポストプロセッサ に渡される 代替ファイル名は "-" である。
国際化文字セット
入力ファイルには、3 タイプの文字が含まれている。 ノーマル文字 画面に直接表示できる文字。 制御文字 画面には直接表示すべきでないが、(バックスペースやタブのように) 普通のテキストファイ ル中にある文字。 バイナリ文字 画面には直接表示すべきでなくテキストファイル中にはない文字。 「文字セット」とは、簡潔にいうと、どの文字がノーマル文字・制御文字・バイナリ 文字とされる か、ということである。 環境変数 LESSCHARSET が文字セットを選択するのに使われる。 この環境 変数に設定できる値を以下に示す。 ascii BS, TAB, NL, CR, formfeed が制御文字である。 32 から 126 の値を持つ文字がノーマル で、その他がバイナリである。 iso8859 ISO 8859 文字セットを選択する。 160 から 255 までの文字がノーマルとして扱われる以外 は、ASCII と同じである。 latin1 iso8859 と同じ。 dos MS-DOS 用の文字セットを選択する。 ebcdic EBCDIC 文字セットを選択する。 koi8-r ロシア語文字セットを選択する。 next NeXT 計算機用の文字セットを選択する。 utf-8 ISO 10646 文字セットの UTF-8 エンコーディングを選択する。 特殊なケースとして、 LESSCHARSET で指定できる限定された文字セットではなく、 他の文字セット を使うように less を調整したいという場合もある。 このようなとき、環境変数 LESSCHARDEF が 文字セットを定義するのに使われる。 この変数の定義において、文字 "." はノーマルキャラクタ、 文字 "c" は制御文字、文字 "b" はバイナリキャラクタを表す。 また、10進数は定義文字の繰り返 しを示す。 例を挙げると、"bccc4b." は値 0 の文字がバイナリ、 1, 2, 3 はコントロール、4, 5, 6 はバイナリ、 8 はノーマルキャラクタという意味である。 最後に文字タイプが指定された文字よ り後の全ての文字は、 最後の文字と同じタイプとみなされるので、9 から 255 までの 値を持つ文 字はノーマルとなる。 (これは 1 つの例であるので、 必ずしも実際の文字セットを表しているわけ ではない。) 下の表は、各 LESSCHARSET と等しい LESSCHARDEF の値を示している。 ascii 8bcccbcc18b95.b dos 8bcccbcc12bc5b95.b. ebcdic 5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b 9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b. iso8859 8bcccbcc18b95.33b. koi8-r 8bcccbcc18b95.b128. latin1 8bcccbcc18b95.33b. next 8bcccbcc18b95.bb125.bb LESSCHARSET と LESSCHARDEF のどちらも設定されていない場合でも、 システムが setlocale イン ターフェースをサポートしていれば、 less は文字セットを決定するのに setlocale を使用する。 setlocale は環境変数 LANG もしくは LC_CTYPE で制御される。 制御文字とバイナリキャラクタは目立たせて (反転して) 表示される。 これらの文字は、可能であ るならば (control-A を ^A というように) キャレット表記で表示される。 キャレット表記 は、0100 ビットを反転した結果が 印刷可能文字になるときのみ使われる。 キャレット表記できな いときは、角型括弧 <> で囲まれた 16 進数で表す。 このフォーマットは、環境変数 LESSBINFMT を設定することで変えられる。 LESSBINFMT は "*"で始まり、もう 1 つの文字が表示属性を選択す る。 "*k" は点滅、"*d" は太字、"*u" は下線、 "*s" は反転、"*n" は標準である。 LESSBINFMT が "*" で始まっていないときは、標準の属性を仮定する。 LESSBINFMT の残りの部分は、1 つの printf スタイルのエスケープシーケンス (% と x, X, o, d など) を含む文字列である。 LESSBINFMT が "*u[%x]" の場合、バイナリキャラクタは 大括弧で囲まれた 16 進数に下線をして表 示される。 LESSBINFMT が指定されていないときのデフォルトは、"*s<%X>" に指定されている。
プロンプト
-P オプションにより、プロンプトを自分の好みに調整することができる。 -P オプションに与えら れた文字列は、指定したプロンプト文字列を置き換える。 文字列中のある文字は特殊文字として解 釈される。 プロンプト機構は柔軟性を持たせるために少々複雑になっているが、 一般のユーザー は、個人用プロンプト文字列の作り方を詳細に理解する必要はない。 パーセント記号は、その後に何の文字が続くかによって展開される。 %bX 現在の入力ファイルへのバイトオフセットで置き換えられる。 b の後には、(X で示される) 1 文字が続き、どの行のバイトオフセットを 使うかを指定する。"t" のときは、画面の先頭 行のバイトオフセットが使われる。 "m" は真中の行、"b" は最終行、 "B" は最終行のすぐ 次の行のバイトオフセットを使うことを意味する。 そして、"j" の場合には -j オプション で指定したターゲット行の バイトオフセットを使うことを意味している。 %B 現在の入力ファイルの大きさに置き換えられる。 %c 画面左端に現れるテキストのカラム番号に置き換えられる。 %dX 対象となる行が入力ファイルにおいて何ページ目であるかに置き換えられる。 %b オプショ ンと同じように、X で対象とする行を決定する。 %D 入力ファイルのページ数に置き換えられる。 つまり、入力ファイルの最終行のページ番号に 等しい。 %E エディタの名前 (環境変数 VISUAL、VISUAL が定義されていないときは 環境変数 EDITOR) に置き換えられる。 以降の、LESSEDIT の特徴に関する話題を参照。 %f 現在の入力ファイル名に置き換えられる。 %i 入力ファイルのリスト中における現在のファイルのインデックスで置き換えられる。 %lX 入力ファイルで何行目にいるかで置き換えられる。 対象となる行は、%b オプションと同じ く X で決定される。 %L 入力ファイルの最終行の行番号で置き換えられる。 %m 入力ファイルの合計数で置き換えられる。 %pX バイトオフセットで計算して、現在の入力ファイルで 何パーセントの場所にいるかで置き換 えられる。 対象となる行は、%b オプションと同じく X で決定される。 %PX 行番号で計算して、現在の入力ファイルで 何パーセントの場所にいるかで置き換えられる。 対象となる行は、%b オプションと同じく X で決定される。 %s %B と同じ。 %t 後に続くスペースを取り除かせる。 通常は文字列の後に使われるが、どこに置いてもよい。 %x ファイルリストのうちの次の入力ファイル名で置き換えられる。 %K 入力ファイルの中で最も最近現れた、非 ASCII 文字セットまたは 非 ASCII コードセットで 置き換えられる。 もし、(入力がパイプのためファイルサイズが分からない場合など) 項目が不明のときは、代わりに クエスチョンマークが表示される。 プロンプト文字列のフォーマットは、ある条件に応じて変更することができる。 クエスチョンマー クとその後に続く 1 文字で、"IF" のように働き、 どのような文字が続くかで、条件文が評価され る。 条件文が真ならば、クエスチョンマークと条件文字の後に続く文字列から ピリオドまでがプロ ンプトの中に表示される。 条件文が偽なら、文字列はプロンプトに表示されない。 クエスチョン マークとピリオドの間にあるコロンは、"ELSE" として働き、 コロンとピリオドの間にある文字列 は、IF 文が偽のときのみ プロンプト文字列に組み入れられる。 (クエスチョンマークの後の) 条件 文字は次のようなものがある。 ?a プロンプトに既に文字列が含まれているときに真。 ?bX 指定した行のバイトオフセットが既知の場合に真。 ?B 現在の入力ファイルの大きさが既知の場合に真。 ?c 水平方向にテキストがシフトしている (%c が 0 でない) 場合に真。 ?dX 指定された行のページ番号が既知の場合に真。 ?e ファイルの終りのときに真。 ?f 入力ファイル名があるとき (入力がパイプでないとき) に真。 ?lX 指定した行の行番号が既知の場合に真。 ?L ファイルの最終行の行番号が既知の場合に真 ?m 2 つ以上の入力ファイルがある場合に真。 ?n 新しい入力ファイルの最初のプロンプトのとき真。 ?pX 指定した行の現在の入力ファイルでの バイトオフセットで計算したパーセントが既知のとき 真。 ?PX 指定した行の現在の入力ファイルでの 行番号で計算したパーセントが既知のとき真。 ?s "?B" と同じ。 ?x 次の入力ファイルがあるとき (現在の入力ファイルが最後のファイルでないとき) 真。 特殊文字 (クエスチョンマーク、コロン、ピリオド、 パーセント、バックスラッシュ) 以外の 全て の文字がプロンプトの実際に表示される部分になる。 特殊文字をプロンプトに表示させるには、 そ の文字の前にバックスラッシュを置けばよい。 プロンプトの例をいくつか挙げる。 ?f%f:Standard input. このプロンプトは、ファイル名が既知であれば表示する。 わからないときは "Standard input" と 表示する。 ?f%f .?ltLine %lt:?pt%pt\%:?btByte %bt:-... このプロンプトは、ファイル名が既知であれば、ファイル名を表示する。 行番号が既知のときに は、ファイル名に続けて行番号を表示する。 もし行番号が既知でなく、パーセントが既知のとき は、パーセントを表示する。 パーセントも既知でなく、バイトオフセットが既知のときは、 バイト オフセットを表示する。 バイトオフセットも既知でないときは、ダッシュを表示する。 各クエス チョンマークにピリオドがどのように対応しているかに注意すること。 また、%pt の後の % を実際 に表示させるために、 バックスラッシュでエスケープしていることにも注意すること。 ?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x..%t このプロンプトがファイルにおける最初のプロンプトのときファイル名を表示する。 さらに、2 つ 以上のファイルがあるときは、 "file N of N" というメッセージを加える。 そして、ファイルの終 りに達したときは、文字列 "(END)" を表示し、 引き続いて次のファイルがあるときはそのファイル 名を表示する。 最後に、後に続くスペースを切り詰める。 これはデフォルトで使われているプロン プトである。 参考として、(-m と -M オプションに対応する) 2 つのデフォルトプロンプトを挙げ る。 ここで 2 行に分けたのは、読みやすさの為だけで実際は分けない。 ?n?f%f .?m(file %i of %m) ..?e(END) ?x- Next\: %x.: ?pB%pB\%:byte %bB?s/%s...%t ?f%f .?n?m(file %i of %m) ..?ltlines %lt-%lb?L/%L. : byte %bB?s/%s. .?e(END) ?x- Next\: %x.:?pB%pB\%..%t そして、次に挙げるのは、= コマンドで出されるデフォルトのメッセージである。 ?f%f .?m(file %i of %m) .?ltlines %lt-%lb?L/%L. . byte %bB?s/%s. ?e(END) :?pB%pB\%..%t プロンプト展開の機能は、他の目的でも使われる。 環境変数 LESSEDIT が定義されている場合、 こ の変数は v コマンドで実行されるコマンドとして使われる。 LESSEDIT の文字列は、プロンプト文 字列と同じ方法で展開される。 LESSEDIT のデフォルトの値を以下に示す。 %E ?lm+%lm. %f この文字列は、「エディタ名」・「+ と行数」・「ファイル名」に展開される。 指定したエディタ が、"+行数" という書式を受け付けない場合や、 呼び出しの書式が違う場合は、このデフォルトの LESSEDIT を修正することができる。
セキュリティ
環境変数 LESSSECURE が 1 に設定されている場合、 less は「安全な」モードで実行される。この 場合、次のことができない。 ! シェルコマンド | パイプコマンド :e ファイルの読み込みコマンド v 編集コマンド s -o ログファイル -k lesskey ファイルを使う -t タグファイルを使う ファイル名の中の、* といった、メタキャラクタ ファイル名補完 (TAB, ^L) less をいつも「安全な」モードでしか実行できないように コンパイルすることも可能である。
環境変数
環境変数は、通常と同じくシステム環境で設定でき、 lesskey (1) ファイルでも指定できる。 環境 変数が複数で指定されている場合、 ローカルな lesskey ファイルで定義されている変数は、 シス テム環境で定義されている変数より優先される。 また、システム環境で定義されている変数は、 シ ステム共通の lesskey ファイルで定義されている変数より優先される。 COLUMNS 画面の 1 行あたりの文字数を設定する。 環境変数 TERM で設定された値より優先される (TIOCGWINSZ や WIOCGETD をサポートするウインドウシステムの場合、 ウインドウシステム が持つ画面サイズの方が、 環境変数 LINES と COLUMNS より優先される)。 EDITOR (v コマンドで使われる) エディタの名前。 HOME (Unix で lesskey ファイルを探すのに使われる) ユーザーのホームディレクトリ名。 HOMEDRIVE, HOMEPATH 環境変数 HOME が設定されていない場合、 環境変数 HOMEDRIVE と HOMEPATH を足したもの が ユーザーのホームディレクトリ名となる (Windows バージョンのみで有効)。 INIT (OS/2 で lesskey ファイルを探すのに使われる) ユーザーの init ディレクトリ名。 LANG 文字セットを決定するための言語。 LC_CTYPE 文字セットを決定するための言語。 LESS less に自動的に渡されるオプション。 LESSANSIENDCHARS ANSI カラーシーケンスの終りとして使われる文字 (デフォルトは "m")。 LESSBINFMT 印字可能文字でもなく、制御文字でもない文字を表示する際のフォーマット。 LESSCHARDEF 文字セットを定義する。 LESSCHARSET あらかじめ定義された文字セットを選択する。 LESSCLOSE (オプションの) 入力ポストプロセッサを呼び出すためのコマンドライン。 LESSECHO lessecho プログラムの名前 (デフォルトは、"lessecho")。 lessecho プログラムは、Unix システム上のファイル名を、* や ? といった メタキャラクタで展開するのに必要である。 LESSEDIT (v コマンドで使われる) エディタのプロトタイプ文字列。 「プロンプト」セクションでの 話題を参照。 LESSKEY デフォルトの lesskey(1) ファイルの名前。 LESSKEY_SYSTEM デフォルトで使われるシステム共通の lesskey(1) ファイルの名前。 LESSMETACHARS シェルに「メタキャラクタ」として解釈される文字のリスト。 LESSMETAESCAPE less がシェルにコマンドを送る際にメタキャラクタの前に付加するプレフィックス。 LESSMETAESCAPE が空の文字列であるとき、 メタキャラクタを含むコマンドはシェルに送ら れない。 LESSOPEN (オプションの) 入力プリプロセッサを起動するためのコマンドライン。 LESSSECURE less を「安全な」モードで実行させる。 「セキュリティ」セクションでの話題を参照する こと。 LESSSEPARATOR ファイル名補完においてディレクトリ名に付加される文字列。 LINES 画面の行数を設定する。 環境変数 TERM で指定された行数より優先される。 (TIOCGWINSZ や WIOCGETD をサポートするウインドウシステムの場合、 ウインドウシステムが持つ画面サ イズの方が、 環境変数 LINES と COLUMNS より優先される)。 PATH (MS-DOS と OS/2 で lesskey ファイルを探すのに使われる) ユーザーの検索パス。 SHELL ! コマンドを実行したり、ファイル名を補完するのに使われるシェル。 TERM less が実行される端末のタイプ。 VISUAL (v コマンドで使われる) エディタの名前。
関連項目
lesskey(1)
警告
(-P オプションで変更されない限り) = コマンドとプロンプトは、 画面の先頭行と最終行の行番号 を表示する。 しかし、バイト数とパーセントは画面最終行の次行について表示する。 :e コマンドが 2 つ以上のファイルに対して使われ、 ファイルのうちの1つが既に閲覧されている場 合、 新しいファイルが予期しない順番でリストに入れられる。 ある種の古い端末 (いわゆる「マジッククッキー」端末) では、 検索のときのハイライトが表示エ ラーを起こす。 そのような端末では、この問題を避けるため、 検索の際のハイライトがデフォルト で不可に設定されている。 検索の際のハイライト表示が設定されている場合に、 検索パターンが ^ で始まっていると、 マッ チした文字列以外の部分までハイライトされることがある (POSIX 正規表現パッケージを使って less がコンパイルされていれば、 この問題は起こらない)。 setlocale が 0 から 31 の値を持つ ASCII 文字をバイナリキャラクタでなく 制御文字とするシス テムもある。 そのため、 less がある種のバイナリファイルをバイナリでない通常のファイルとし て扱かってしまう。 この問題を解決するには、環境変数 LESSCHARSET を "ascii" (もしくは、何か 適切な文字セット) に設定すればよい。 このバージョンの less に関する既知のバグの最新リストは、 http://www.flash.net/~marknu/less を参照すること。
著作権
Copyright (C) 2000 Mark Nudelman less is part of the GNU project and is free software. You can redistribute it and/or modify it under the terms of either (1) the GNU General Public License as published by the Free Software Foundation; or (2) the Less License. See the file README in the less distribution for more details regarding redistribution. You should have received a copy of the GNU General Public License along with the source for less; see the file COPYING. If not, write to the Free Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. You should also have received a copy of the Less License; see the file LICENSE. less is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
著者
Mark Nudelman <marknu@flash.net> バグの報告やコメントは、上のアドレスか bug-less@gnu.org へ送って下さい。 Version 358: 08 Jul 2000 LESS(1)