表示されたテキストファイルの割合をあまり表示できませんか?


18

タイトルが示すように、テキストファイルを閲覧しているときに、テキストファイル全体の現在表示されている割合を知りたいと思います。

-Nオプションを使用すると、行番号をオンにできますが、テキストファイル全体の行番号を表示しないようにするにはどうすればよいでしょうか。

ありがとう。

回答:


19

lessでファイルを開く場合、Ctrl-gを押すと、以下に示すように、現在の行番号、合計行数、パーセンテージが表示されます。

行51-100 / 185バイト3228/5886 54%(RETURNキーを押す)


1
thanks.manページを再訪した後、それを見つけて、他の2つの等しいコマンド「:f」と「=」を取得するように管理してください。
Jichao

1
残念ながら、他の回答の-Mまたは-mパラメーターを使用しても、パイプでは機能しません。たとえばwdiff version1.txt version2.txt | colordiff | less -RM、パーセンテージは表示されません。誰かがこれに対する解決策または回避策を持っているかどうかを教えてください。更新:ソリューションは、別の回答で説明されているように+ Ggを追加することです。
baptx

18

-Mスイッチと同じような意味ですか?


それはまさに私が欲しいものです!
Jichao

または-m、行番号が不要な場合。
フランクリンゆう

1
パイプを使用するときに割合を表示する解決策または回避策があるかどうか考えていますか?たとえば、次のコマンドでは色付きの差分の割合を確認できません。wdiff version1.txt version2.txt | colordiff | less -RM更新:解決策は、別の回答で説明したように+ Ggを追加することです。
baptx

6

less -M +Gg

+GGコマンド)がファイルの最後まで進むので、それほど大きくないファイルでも問題ありません


1
でも素晴らしい$MANPAGER!をご覧くださいman man
トム・ヘイル

colordiffあまりにも素晴らしい!例:wdiff version1.txt version2.txt | colordiff | less -RM +Gg
baptx

4

これまでの回答を少し拡大するだけです。コマンドライン:

less -M +Gg

次のことを行います。

-Mプロンプトでファイル内の現在位置を表示します + Gg RunコマンドG(ファイルの最後にg移動)および(ファイルの先頭に戻ります)

manページを表示しているlessときに発生するstdinからの読み取りの場合man、ファイル内の行の総数が事前にわからないため、その位置を適切に計算できます。したがって、行の総数を取得し、現在の位置をパーセンテージとして計算できるようにする+Gg必要lessがあります。

これらの変数を〜/ .bashrcに設定すると便利です。

export LESS+='-M'
export MANPAGER='less +Gg'

LESSすべての呼び出しがあることを保証しますless、プロンプト上の現在位置が表示され、MANPAGERそれが保証されますlessされ、manページに行の合計数を取得することができますless、その後、プロンプトに表示されます。より賢明なように見えない含めること+GgLESS防ぐことがless潜在的に大きなパイプで連結された入力の最後に移動しようとしているから。それが必要な場合、いつでもコマンドGg手動で実行できます。


手動での方法の場合は+ 1、Gg
wisbucky

なぜあなたの例にプラス記号「LESS +」を入れるのですか?「export LESS = 'M'」と書くだけで十分ではないでしょうか?
デシベル

@db、LESS + = '-M'は、以前にLESSに設定されていたオプションにオプション-Mを追加します
Paulo Marcel CoelhoAragão19年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.