解決
ソリューション
のknitatoms'回答するの少ない手動バージョン
アレックスMarteilliの答えと組み合わせるする
非常によく動作します。そのポケットベルオプションで+Gg
するless
オプションを渡す
man -P 'less -s -M +Gg' man
これは
を置くことによって恒久的に行うことができますexport MANPAGER='less -s -M +Gg'
シェルの設定ファイルのいずれかで(構文上のBashのためのものであり、
ZSH)。今、例えば、man man
あなたのようにパーセンテージを表示します
欲しかった!
警告
あなたべきのないのLESS
変数にOPTIONS
を入れて!例えば、
やって
export LESS='-M +Gg'
非常に大きなファイルを読み込むときに問題が発生します。たとえば、
yes | LESS='-M +Gg' less
は非常にうまく機能しません...
説明
他の回答が説明したとおり、、問題はman less
が言うことができないということです
あなたはそれがどのくらいのファイルを知っているまであるファイルに何パーセント
であり、それは読んで、デフォルトではファイルの最後まで読みません
パイプから。
g
の<=>セクションから:
+ If a command line option begins with +, the remainder of that
option is taken to be an initial command to less. For exam‐
ple, +G tells less to start at the end of the file rather than
the beginning, and +/xyz tells it to start at the first occur‐
rence of "xyz" in the file. As a special case, +<number> acts
like +<number>g; that is, it starts the display at the speci‐
fied line number (however, see the caveat under the "g" com‐
mand above). If the option starts with ++, the initial com‐
mand applies to every file being viewed, not just the first
one. The + command described previously may also be used to
set (or change) an initial command for every file.
<=> "ファイルの先頭に戻る" という意味です。
から<=>:
-P pager, --pager=pager
Specify which output pager to use. By default, man uses pager
-s. This option overrides the $MANPAGER environment variable,
which in turn overrides the $PAGER environment variable. It
is not used in conjunction with -f or -k.
The value may be a simple command name or a command with argu‐
ments, and may use shell quoting (backslashes, single quotes,
or double quotes). It may not use pipes to connect multiple
commands; if you need that, use a wrapper script, which may
take the file to display either as an argument or on standard
input.
他のヒント
export LESS="-m"
LESS
実行しているときにより一般的には、less
環境変数はコマンドラインフラグと同等のオプションが含まれていることがありますが、明示的に渡すことができます - ここでは、割合を含め、(より豊かな促すためにそれを伝える-m
オプションを、 )あなたが尋ねたように。あなたは$
でそれぞれを終了することにより、また、その単一の環境変数内の複数のオプションを渡すことができます。多くの詳細情報については、以下のmanページを参照してください。
編集:少ないがないこと、それはもちろん可能である(ファイル上でそれを呼び出すのではなく、それに配管をしている場合は、例えば、あまり使用しているかによって異なります)%を表示することはできませんもちろん、その場合には、表示されますの合計サイズを知っている - その場合には、それはそれは持っているなけなしの情報を要求されます、例えば、それがどのくらいのテキストを示していますこれまでのところ。例えば、man
は配管により、MANPAGER
その方法を使用しています。
だから、あなたの特定の必要性は、あなたが「代替ポケベル」を使用する必要があります(というファイルに直接-P
呼び出すときより)(環境変数を<=> <=>における%を参照するか、<=を切り替えることであれば>一時ファイルに<=>の出力を保存した後、後者に<=>使用する単純なスクリプトである<=>コマンドライン)に。同様にあなたが<=>の「プリフォーマットページ」オプションを使用して実行するの一時ファイルに、このような書式設定済みのページを解凍するかもしれない - あなたはまだ、さらに深くトリックは、等、等果たしていない限り(これは人間自身の「色付け」を失う可能性<=>などが、これはやや複雑で、「簡単なスクリプト」になり始めている; - 。)
G で先頭に戻り、その後、私だけでmanページの最後に移動シフト + G Linuxの。 (または、 ' ' を使用して、前の位置に戻すことができます)。
以下が、あなたはどのように遠くにファイル経由の割合を表示するのに十分な情報を持っています。 (あなたが長いプロンプトを取得するために-M
入力する必要があるかもしれません。)
これは、ハッキングのビットですが、2つだけのキーを押します。これは、OS / X上で動作するかどうかわかりません。
アレックスマルテッリ」の答えに追加するには:
あなたもそれを入力して、実行時に以下に任意のコマンドラインパラメータを渡すことができます注(含む - )、キーを入力しました。だから、あなただけ入力することができます。
-m<Enter>
長いプロンプトを切り替えるには、実行しているあまりに。
これは、例えば、実行時に変更する必要があるオプションのために特に便利です-S(ライン折りたたみオン/オフ)。
で私が使用したライブless
ランタイム-M
。
これは少ないランニングと:
プロンプトで "<kbd>Keyboard<kbd>
入力" です。
本当に大きなバッファで、私もそのサイズを「発見」するために最後まで行かなければなりませんでした。 終了およびバックホーム。
<時間>注:私は @sleske のの答えにコメントとして投稿しているだろうが、最後に私が思い出します、コメントは<=>タグをサポートしていません。の
私は、私の環境でこれを持っています。それは持っているように、それは一番下に<filename> - Lines X-Y of Z
印刷、またはその情報の少なくとも同じくらいでしょう。
export LESS='-P?f%f - .?ltLine?lbs. %lt?lb-%lb.?L of %L.:?pt%pt\%:?btByte %bt:-...'