VMware ESXi and vSphere Cluster Management

less-Befehl unter Linux: Dateien anzeigen, navigieren und durchsuchen

Lerne den Linux-Befehl less: Dateien und Ausgaben seitenweise lesen, navigieren, suchen, Manpages verwenden und Logs verfolgen.

Was ist less?

less ist ein interaktiver Pager für Linux. Ein Pager stellt längere Textausgaben im Terminal seitenweise dar. Dadurch kannst du Dateien und Befehlsausgaben lesen, ohne dass der Inhalt sofort über den Bildschirm läuft.

Im Gegensatz zu cat, das den gesamten Inhalt direkt ausgibt, eignet sich less besonders für lange Dateien. Du kannst sowohl vorwärts als auch rückwärts navigieren und gezielt nach Text suchen. Außerdem muss less nicht zwingend die gesamte Datei auf einmal in den Speicher laden; bei großen Textdateien kann das weniger Speicherbedarf bedeuten als bei manchen älteren Pagern.

Grundaufruf: Eine Datei öffnen

Die grundlegende Syntax lautet:

less DATEI

Beispiele mit einem relativen und einem absoluten Pfad:

less sample_text.txt
less /pfad/zur/datei.txt

Ein relativer Pfad beginnt meist im aktuellen Verzeichnis. Ein absoluter Pfad beginnt unter Linux mit / und beschreibt den vollständigen Weg zur Datei.

Nach dem Aufruf zeigt less die Datei an und wartet auf Tastatureingaben. Das Programm bearbeitet die Datei nicht. Mit q beendest du die Anzeige.

Existiert die Datei nicht, ist der Pfad falsch oder fehlt die Leseberechtigung, meldet less, dass die Datei nicht geöffnet werden kann. Prüfe dann beispielsweise den Namen mit ls und den Typ beziehungsweise die Zugriffsrechte mit:

ls -l DATEI
file DATEI

Mehrere Dateien öffnen

Du kannst mehrere Dateien in einem Aufruf angeben:

less DATEI1 DATEI2

less behandelt sie als aufeinanderfolgende Eingaben. Zwischen den Dateien kannst du je nach Version mit den dafür vorgesehenen Befehlen wechseln. Für den Einstieg ist es oft übersichtlicher, zunächst eine Datei zu öffnen.

Die Statuszeile verstehen

Am unteren Fensterrand zeigt less häufig eine Statuszeile. Ihr genaues Aussehen hängt vom System, der less-Version und den verwendeten Optionen ab.

Eine mögliche Anzeige sieht ungefähr so aus:

lines 1-23/37 63%
  • 1-23: Diese Zeilen sind aktuell sichtbar.
  • /37: Die Datei umfasst insgesamt etwa 37 Zeilen.
  • 63%: Die aktuelle Position liegt ungefähr bei 63 Prozent der Datei.

Bei sehr kurzen Dateien oder am Anfang beziehungsweise Ende kann die Anzeige anders aussehen. Die Statuszeile ist eine Orientierung, keine Garantie für ein bestimmtes Layout.

Navigation innerhalb einer Datei

less wird hauptsächlich über einzelne Tasten gesteuert. Viele Befehle werden direkt eingegeben und nicht mit einem zusätzlichen Shell-Befehl gestartet.

Taste oder EingabeWirkungTypischer Einsatz
Pfeil hochEine Zeile zurückZeilenweise rückwärts lesen
Pfeil runter oder EnterEine Zeile vorSchrittweise vorwärts lesen
Bild aufEine Seite zurückZur vorherigen Bildschirmseite gehen
Bild abEine Seite vorZur nächsten Bildschirmseite gehen
LeertasteEine Seite vorSchnell weiterblättern
gAn den Anfang springenDateibeginn anzeigen
GAn das Ende springenLetzte Zeilen anzeigen
ZEILENNUMMERgZu einer Zeile springen25g springt zu Zeile 25
/SUCHBEGRIFFVorwärts suchenDen nächsten passenden Text finden
nNächsten Treffer anzeigenWeitere Treffer in Suchrichtung finden
NVorherigen Treffer anzeigenZum vorherigen Treffer zurückgehen
qless beendenZur Shell zurückkehren

Die Leertaste ist eine praktische Alternative zu Bild ab, wenn du beim Lesen schnell zur nächsten Seite wechseln möchtest. Mit g springst du zum Anfang, mit dem großen G zum Ende. Für einen gezielten Sprung gibst du zuerst eine Zeilennummer und anschließend g ein, zum Beispiel 25g.

Text suchen

Mit einer Vorwärtssuche findest du Text ab der aktuellen Position in Richtung Dateiende. Drücke /, gib den Suchbegriff ein und bestätige mit Enter:

/error

less springt zum nächsten Treffer. Mit n suchst du den nächsten Treffer in derselben Richtung. Mit dem großen N rufst du den vorherigen Treffer auf.

Für eine Suche in Richtung Dateianfang kannst du ein Fragezeichen verwenden:

?error

Suchmuster können, abhängig von den Einstellungen, reguläre Ausdrücke unterstützen. Sonderzeichen wie Punkt, Stern oder eckige Klammern haben dann eine besondere Bedeutung. Wenn eine Suche keinen Treffer liefert, prüfe die Schreibweise, die Groß- und Kleinschreibung und ob du die Eingabe mit Enter bestätigt hast.

less mit Befehlsausgaben verwenden

Eine Pipe ist das Zeichen |. Sie verbindet die Standardausgabe eines Befehls mit der Eingabe eines anderen Befehls. So kannst du lange Ausgaben an less weitergeben:

ls -la | less
ls -la /etc | less

Der Unterschied zum direkten Öffnen einer Datei ist wichtig:

  • less DATEI liest eine vorhandene Datei.
  • BEFEHL | less zeigt die gerade erzeugte Standardausgabe eines Befehls an.

Auch ein Log-Auszug kann so lesbar gemacht werden:

grep error /var/log/syslog | less

Hier filtert grep zunächst passende Zeilen. less stellt anschließend das Ergebnis seitenweise dar.

Zusammenspiel mit Manpages

Eine Manpage ist eine lokale Linux-Handbuchseite zu einem Befehl, Programm oder einer Systemfunktion. Viele Manpages werden automatisch mit einem Pager angezeigt, häufig mit less.

man less

Beim Lesen einer Manpage funktionieren die bekannten less-Tasten: Mit den Pfeiltasten bewegst du dich zeilenweise, mit der Leertaste seitenweise, mit / suchst du nach einem Begriff und mit q beendest du die Manpage.

man less ist die vollständige Referenz für Optionen, Suchverhalten und weitere Tastenkombinationen. Für die tägliche Arbeit reichen zunächst die Navigation, die Suche und q.

Nützliche Optionen

Optionen ergänzen den Aufruf und verändern die Darstellung oder das Verhalten von less.

BefehlZweckHinweis
less DATEIEine Datei im Pager öffnenGrundform für normale Textdateien
BEFEHL | lessBefehlsausgabe seitenweise lesenVerwendet die Standardausgabe über eine Pipe
less -N DATEIZeilennummern einblendenPraktisch für Fehlermeldungen und gezielte Sprünge
less +F LOGDATEINeue Einträge fortlaufend verfolgenGeeignet zum Beobachten wachsender Logdateien
man lessHandbuch zu less anzeigenEnthält die vollständige Dokumentation

Zeilennummern anzeigen

Mit -N blendest du links Zeilennummern ein:

less -N sample_text.txt

Das erleichtert es, auf bestimmte Stellen zu verweisen oder mit 25g zu einer bekannten Zeile zu springen.

Lange Zeilen umbrechen oder abschneiden

Bei schmalen Terminals können lange Zeilen unübersichtlich werden. less kann lange Zeilen je nach Einstellung umbrechen oder außerhalb des sichtbaren Bereichs abschneiden. Welche Darstellung aktiv ist, hängt von Optionen und der less-Version ab. Wenn Zeilen schwer lesbar sind, vergrößere zunächst das Terminal und informiere dich mit man less über die passenden Anzeigeoptionen.

Logdateien mit +F verfolgen

Mit +F startet less im Follow-Modus:

less +F /var/log/syslog

less wartet dann auf neue Zeilen, ähnlich wie eine fortlaufende Logbeobachtung. Drücke Ctrl+C, um den Follow-Modus zu verlassen und zur normalen Navigation zurückzukehren. Danach kannst du wieder blättern, suchen und mit q beenden.

Grenzen und passende Alternativen

less dient primär zum Anzeigen, nicht zum Bearbeiten. Wenn du eine Datei verändern möchtest, verwende einen Editor wie nano oder vim.

Binärdateien und sehr große Spezialformate können in less unleserliche Zeichen oder wenig hilfreiche Strukturen zeigen. Prüfe den Dateityp beispielsweise mit:

file DATEI

Bei unerwarteter Zeichenkodierung brauchst du gegebenenfalls ein Werkzeug zur passenden Dekodierung oder Darstellung. Auch sehr lange Zeilen können wegen der Terminalbreite schwer lesbar sein.

Fehlerbehebung

Die Datei kann nicht geöffnet werden

  • Prüfe den Dateinamen und den Pfad auf Schreibfehler.
  • Kontrolliere mit ls, ob die Datei tatsächlich vorhanden ist.
  • Prüfe die Zugriffsrechte. Verwende nur Zugriffsrechte, für die du berechtigt bist.

Es scheint keine Eingabe möglich zu sein

Wenn du less +F verwendet hast, befindet sich less wahrscheinlich im Follow-Modus. Drücke Ctrl+C, um zur normalen Navigation zurückzukehren. Bedenke außerdem, dass less kein Editor ist: Zum Ändern der Datei brauchst du beispielsweise nano.

Die Suche findet nichts

  • Prüfe die Schreibweise und Groß- beziehungsweise Kleinschreibung.
  • Suche zunächst nach einem kürzeren Teilbegriff.
  • Bestätige den Suchbegriff mit Enter.
  • Berücksichtige, dass Sonderzeichen als Bestandteile regulärer Ausdrücke interpretiert werden können.

Lange Zeilen sind abgeschnitten

Eine geringe Terminalbreite oder die aktuelle Umbruchdarstellung kann die Ursache sein. Vergrößere das Terminalfenster oder schlage in man less die Optionen zur Darstellung langer Zeilen nach.

Die Ausgabe enthält unleserliche Zeichen

Möglicherweise handelt es sich um eine Binärdatei oder um Text mit einer unerwarteten Zeichenkodierung. Prüfe den Typ mit file DATEI und verwende bei Bedarf ein geeignetes Werkzeug zur Dekodierung.

Kompakte Lernübung

  1. Öffne eine Textdatei mit less sample_text.txt.
  2. Bewege dich mit Pfeil hoch und Pfeil runter zeilenweise.
  3. Blättere mit der Leertaste vorwärts und mit Bild auf rückwärts.
  4. Springe mit g zum Anfang und mit G zum Ende.
  5. Gib /error ein und bestätige mit Enter.
  6. Nutze n für den nächsten und N für den vorherigen Treffer.
  7. Beende less mit q.

Wenn diese Abläufe sitzen, kannst du den Pager auf Dateien, Manpages und fast jede längere Standardausgabe anwenden. Eine weiterführende Übersicht findest du auch unter less-Befehl.