Weniger Ausdruck auf Standarddruck, wenn eine ganze Datei auf einem Bildschirm angezeigt werden kann

13

Wenn moreeine Datei übergeben wird, deren Inhalt auf einem Bildschirm angezeigt werden kann, schreibt sie den Inhalt der Datei ohne Paginierung auf stdout. Wenn die Datei nicht auf einen Bildschirm passt, morepaginieren Sie sie.

lesshat eine Option zum Beenden, wenn die Datei, mit der gearbeitet wird, auf einem Bildschirm angezeigt werden kann ( -F), und es hat eine moreEmulationsfunktion, die sich ähnlich wie das -FFlag verhält , aber keine dieser Optionen scheint zu bewirken less, dass der Inhalt der Datei geschrieben wird zu prüfen, ob der Inhalt auf einen Bildschirm passt.

Wie kann ich lessden Inhalt einer Datei auf stdout schreiben, wenn der Inhalt der Datei auf einen Bildschirm passt, und die Datei wie sonst üblich paginieren?


quelle

Antworten:

16

Verwenden Sie less -FX. Von man less:

   -F or --quit-if-one-screen
          Causes less to automatically exit if the entire file can be dis-
          played on the first screen.

   -X or --no-init
          Disables sending the termcap initialization and deinitialization
          strings  to  the  terminal.   This is sometimes desirable if the
          deinitialization string does something unnecessary, like  clear-
          ing the screen.
Chris Down
quelle
Warum arbeitet -Fnur mit -X?
Jesse
2
@Jesse Ohne geht es eigentlich prima -X, nur nicht so wie man es erwartet. Da less ein Pager ist, der auf dem alternativen Bildschirm Ihres Terminals agiert, wird er auf dem alternativen Bildschirm sowohl gestartet als auch beendet , wenn Sie die termcap-Initialisierung nicht deaktivieren . Sie werden wahrscheinlich einen kurzen Blitz sehen.
Chris Down
Also sehe ich nichts mit, echo lol | LESS=F lessweil es auf einem alternativen Bildschirm druckt und sofort zurückschaltet? Es ergibt einen Sinn, denke ich (obwohl ich keinen schnellen Blitz sehe). Vielen Dank.
Jesse
Bah! Ich frage mich, was zum Teufel die weniger Entwickler gedacht haben, als sie den alternativen Bildschirm verwendet haben, wenn -F vorhanden und "verwendet" ist. In diesem Fall ist es überhaupt nicht sinnvoll, den alternativen Bildschirm zu verwenden.
ThiefMaster
Unter unix.stackexchange.com/q/107315/85237 erfahren Sie , wie Sie less -Fohne arbeiten können -X.
John Mellor