VMware ESXi and vSphere Cluster Management

Die letzten Zeilen einer Datei mit tail anzeigen

Lernen Sie, wie Sie mit tail die letzten Zeilen von Text- und Logdateien anzeigen, die Anzahl begrenzen und neue Einträge mit tail -f live verfolgen.

tail ist ein Linux-Kommandozeilenprogramm zur Anzeige des Dateiende. Es liest standardmäßig den abschließenden Abschnitt einer Datei und gibt ihn über die Standardausgabe, also direkt im Terminal, aus.

Der Befehl arbeitet gewöhnlich zeilenorientiert. Deshalb eignet er sich besonders für Logdateien: Das sind Dateien, in die Systeme und Programme Ereignisse, Statusmeldungen und Fehler schreiben.

Die letzten zehn Zeilen anzeigen

Ohne weitere Optionen zeigt tail die letzten zehn Zeilen der angegebenen Datei an. Der grundlegende Aufbau lautet:

tail DATEIPFAD

Um beispielsweise die aktuellsten Einträge eines Systemprotokolls zu prüfen, verwenden Sie:

tail /var/log/messages

Damit sehen Sie die letzten zehn Zeilen von /var/log/messages. Welche Systemprotokolldatei tatsächlich vorhanden ist, hängt von der Linux-Distribution und der verwendeten Protokollierung ab.

Die Anzahl der Zeilen mit -n festlegen

Die Option -n legt fest, wie viele abschließende Zeilen ausgegeben werden. Der Zahlenwert wird an den gewünschten Umfang angepasst.

tail -n 5 /var/log/messages

Dieser Aufruf zeigt nur die letzten fünf Zeilen. Für eine andere Anzahl ersetzen Sie 5 durch den gewünschten Wert, zum Beispiel 20:

tail -n 20 /var/log/messages

Eine Datei mit -f fortlaufend beobachten

Mit der Option -f bleibt tail nach der anfänglichen Ausgabe aktiv. Der Befehl wartet dann auf neu angehängte Zeilen und gibt sie aus, sobald sie in die Datei geschrieben werden.

tail -f /var/log/messages

Das ist nützlich, wenn Sie einen laufenden Dienst oder eine Anwendung während einer Diagnose beobachten möchten. Neue Logeinträge erscheinen automatisch im Terminal, ohne dass Sie den Befehl erneut ausführen müssen.

Ein laufender Aufruf mit -f kehrt absichtlich nicht zur Eingabeaufforderung zurück. Beenden Sie ihn mit Strg+C.

Aktuellen Kontext anzeigen und neue Einträge verfolgen

Die Optionen -n und -f lassen sich kombinieren. So sehen Sie zunächst eine begrenzte Anzahl vorhandener Zeilen und verfolgen anschließend neue Einträge:

tail -n 5 -f /var/log/messages

Der Befehl gibt zuerst die letzten fünf Zeilen aus und wartet danach auf weitere Logmeldungen. Diese Kombination ist bei der Diagnose eines laufenden Dienstes praktisch: Sie erhalten etwas aktuellen Kontext und beobachten zugleich neue Ereignisse.

Wichtige tail-Aufrufe

ZielBefehlsschemaWirkung
Standardmäßig letzte zehn Zeilen anzeigentail DATEIGibt die letzten zehn Zeilen aus.
Bestimmte Anzahl letzter Zeilen anzeigentail -n ANZAHL DATEIGibt genau die angegebene Anzahl abschließender Zeilen aus.
Neue Zeilen fortlaufend verfolgentail -f DATEIZeigt den aktuellen Dateischluss und danach neu angehängte Zeilen.
Begrenzte Anfangsausgabe mit Live-Verfolgung kombinierentail -n ANZAHL -f DATEIZeigt zuerst einen festgelegten Umfang und verfolgt anschließend neue Einträge.

Dateipfade und Berechtigungen

Ein absoluter Pfad beginnt vom Wurzelverzeichnis aus, zum Beispiel /var/log/messages. Ein relativer Pfad wird vom aktuellen Arbeitsverzeichnis aus aufgelöst, zum Beispiel:

tail -n 5 ./logs/anwendung.log

Geschützte Systemlogs sind möglicherweise nicht für den aktuellen Benutzer lesbar. Je nach Dateirechten benötigen Sie dafür geeignete administrative Rechte. Prüfen Sie Berechtigungen und verwenden Sie erhöhte Rechte nur, wenn dies erforderlich und auf dem betreffenden System zulässig ist.

Fehlerbehebung

Datei nicht gefunden

Eine Meldung wie No such file or directory bedeutet meist, dass der Pfad oder Dateiname falsch ist oder diese Logdatei auf dem System nicht verwendet wird. Prüfen Sie den Pfad und verwenden Sie den tatsächlich vorhandenen Dateinamen.

Zugriff verweigert

Bei einer Meldung wie Permission denied besitzt Ihr Benutzer wahrscheinlich keine Leseberechtigung. Prüfen Sie die Dateiberechtigungen und führen Sie den Befehl nur bei Bedarf mit geeigneten administrativen Rechten aus.

Bei tail -f erscheinen keine neuen Zeilen

Das kann mehrere Ursachen haben: Die Datei erhält gerade keine Einträge, der Dateipfad ist falsch oder der Dienst schreibt in ein Journal statt in eine Datei. Prüfen Sie die Aktivität des Dienstes, den Pfad und den verwendeten Protokollierungsmechanismus.

Der Befehl läuft weiter

Bei tail -f ist das normal. Die Folgefunktion wartet absichtlich auf neue Daten. Mit Strg+C beenden Sie den laufenden Prozess.

Praktischer Ablauf für die Logprüfung

  1. Wählen Sie den Pfad der Text- oder Logdatei.
  2. Zeigen Sie zunächst die letzten zehn Zeilen mit tail DATEI an.
  3. Begrenzen Sie die Ausgabe bei Bedarf mit -n, etwa auf fünf Zeilen.
  4. Verwenden Sie -f, wenn Sie neue Einträge eines laufenden Dienstes beobachten möchten.
  5. Beenden Sie die Live-Ansicht anschließend mit Strg+C.

Verwandte Werkzeuge

Für den Dateianfang ist head das Gegenstück zu tail. Werkzeuge wie cat, less und grep ergänzen tail beim vollständigen Anzeigen, Durchsuchen und Filtern von Dateien. Weitere Grundlagen finden Sie unter Dateizeilen mit tail anzeigen.