Wie macht man weniger Stelle in Prozent angeben
-
20-08-2019 - |
Frage
ich jetzt versuchen auch, die Prozentzeichen zu zeigen, wenn Sie laufen, beispielsweise der Befehl
man emacs
Wenn Sie es ausführen, erhalten Sie 'Byte 3300' zum Beispiel.
Alex Antwort schlägt ich, dass wir eine eigene Shell-Funktion von
machen müssenman "$1"| col -b > /tmp/manual
less /tmp/manual
Dabei steht $ 1 bezieht sich auf den ersten Parameter.
Das neue Problem ist bei dem Thread . Dank Yuliy für den Kern bewegen!
Lösung
Lösung
Eine weniger manuelle Version von knitatoms' Antwort
mit Alex Marteilli Antwort kombiniert
funktioniert ganz gut. die +Gg
Option gelangen über seinen Pager Option less
Zum Beispiel versuchen
man -P 'less -s -M +Gg' man
Dies kann permanent erfolgen, indem
export MANPAGER='less -s -M +Gg'
in einer Ihrer Shell-Konfigurationsdateien (oben Syntax ist für Bash und
ZSH). Nun, zum Beispiel, zeigt man man
den prozentualen Anteil, wie Sie
gesucht!
Warnung
Sie sollten nicht legt das +Gg
in der LESS
Variable! Zum Beispiel,
Tun
export LESS='-M +Gg'
wird zu Problemen führen, wenn sehr große Dateien zu lesen. Zum Beispiel:
yes | LESS='-M +Gg' less
nicht sehr gut funktionieren ...
Erklärung
Wie andere Antworten erklärt haben, ist das Problem, dass less
nicht sagen kann,
wie viele Prozent in die Datei sind Sie, bis er weiß, wie lange die Datei
ist, und es ist standardmäßig bis zum Ende der Datei liest nicht beim Lesen
aus einem Rohr.
Aus dem OPTIONS
Abschnitt man less
:
+ 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.
Die g
bedeutet "zum Anfang der Datei".
Von den man man
:
-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.
Andere Tipps
export LESS="-m"
Generell kann die LESS
Umgebungsvariable Optionen enthalten äquivalent zu Befehlszeilen-Flags explizit passieren könnte, wenn less
laufen - hier die -m
Option, die es erzählt reicher aufzufordern (einschließlich der Prozentsatz, wie Sie gefragt). Sie können auch durch die jeweils mit einem $
endet innerhalb dieser einzelnen Umgebungsvariable mehr als eine Option übergeben. Für viel mehr Informationen finden Sie unter weniger der manpage .
Bearbeiten : Es ist natürlich möglich (je nachdem, wie Sie verwenden weniger, wenn Sie zB Rohrleitungen, um es anstatt es auf einem Aufruf der Datei sind), dass weniger nicht wissen die Gesamtgröße Anzeige erscheint es, in diesem Fall natürlich nicht die% zeigen können - in diesem Fall ist es mit dem, was wenig Informationen aufgefordert wird, zum Beispiel hat, wie viel Text hat sich gezeigt, bisher. Zum Beispiel ist man
less
diese Weise durch Rohrleitungen verwendet werden.
Also, wenn Ihr spezifischer Bedarf besteht, die% in man
zu sehen (und nicht, wenn less
direkt auf eine Datei aufrufen) ein „alternatives Pager“ (Umgebungsvariable MANPAGER
oder Schalter -P
auf der man
Kommandozeile) verwenden müssen, die Skript ist ein einfacher, dass man
die Ausgabe in eine temporären Datei speichert und verwendet dann less
auf den letzteren. (Das kann man eigene „Einfärben“ verlieren, wenn Sie noch weiter spielen und tiefer Tricks, etc, etc - in ähnlicher Weise könnten Sie die „Vorformatierung Seiten“ Option von man
verwenden und dekomprimieren, eine solche vorformatierte Seite einem tempfile, auf dem less
laufen, etc, aber das beginnt ein etwas komplexes „einfaches Skript“ zu werden; -).
Unter Linux ich an das Ende des Mannes Seite gehen Sie einfach mit Umschalttaste + G dann zum Anfang zurückkehren mit g . (Sie können auch zu Ihrer vorherigen Position zurück mit ' ' ).
Weniger hat dann genügend Informationen, um den Prozentsatz, wie weit durch die Datei anzuzeigen Sie sind. (Möglicherweise müssen -M
geben Sie die lange Aufforderung zu erhalten.)
Es ist ein bisschen wie ein Hack, aber nur zwei Tastendrücken. Nicht sicher, ob dies auf O / X funktioniert.
Hinzufügen zu Alex Martelli‘Antwort:
Beachten Sie, dass Sie auch eine beliebigen Befehlszeilenparameter auf weniger zur Laufzeit übergeben können, indem es nur die Eingabe (einschließlich der -), gefolgt von Enter-Taste. So können Sie einfach eingeben
-m<Enter>
in eine weniger läuft die lange Aufforderung zu wechseln.
Dies ist besonders nützlich für die Optionen, die zur Laufzeit geändert werden müssen, z.B. -S (Linie Falten on / off).
Mit einer Live-less
Laufzeit I -M
verwendet.
Das ist "-M
Enter " an der :
prompt mit weniger läuft.
Mit wirklich großem Puffer musste ich auch zu Ende gehen zu „entdecken“ ihrer Größe. Ende und zurück Home .
Hinweis: ich als Kommentar gepostet hätte href="https://stackoverflow.com/a/18427567/1695680"> @sleske 's Antwort auf <kbd>Keyboard<kbd> Tags unterstützen, Kommentare.
Ich habe dies in meiner Umgebung. Es wird <filename> - Lines X-Y of Z
am Boden oder zumindest so viel von dieser Information drucken, wie es ist.
export LESS='-P?f%f - .?ltLine?lbs. %lt?lb-%lb.?L of %L.:?pt%pt\%:?btByte %bt:-...'