Über den Tail-Befehl
Jeder kennt die cat-Befehlsalternative zum tail-Befehl, mit dem sich der Inhalt von Dateien anzeigen lässt. Aber in manchen Fällen müssen Sie sich nicht die ganze Datei ansehen, manchmal reicht es, nur das Ende der Datei anzusehen. Wenn Sie beispielsweise den Inhalt einer Protokolldatei sehen möchten, brauchen Sie nicht, womit sie beginnt, Sie haben genug von den neuesten Fehlermeldungen.
Dazu können Sie den Befehl tail verwenden, mit dem Sie eine bestimmte Anzahl von Zeilen vom Ende der Datei ausgeben und neue Zeilen online anzeigen können. Dieser Artikel befasst sich mit dem tail-Linux-Befehl.
Tail-Syntax
Bevor wir uns Tail-Linux-Beispiele ansehen, schauen wir uns seine Syntax und Optionen an. Und die Syntax ist sehr einfach:
# Usage
tail [ OPTION ] ... [ FILE ] ....
Code language: CSS (css)
Standardmäßig gibt das Dienstprogramm die letzten zehn Zeilen der Datei aus, aber sein Verhalten kann mit den folgenden Optionen konfiguriert werden:
# Options
-c - output the specified number of bytes from the end of the file;
-f - update information as new lines appear in the file;
-n - print the specified number of lines from the end of the file;
--pid - used with the -f option, allows you to terminate the utility when the specified process is completed;
-q - do not display file names;
--retry - try again to open a file if it is not available;
-v - display detailed information about the file;
Code language: PHP (php)
Standardmäßig verfolgt das Dienstprogramm keine Namensänderungen, aber Sie können angeben, dass Sie die Datei anhand des Handles verfolgen möchten, für weitere Details in den Beispielen.
Wie man den tail-Befehl verwendet
Nachdem Sie nun die grundlegenden Optionen kennen, sehen wir uns an, wie Sie mit dem Dienstprogramm arbeiten. Das einfachste Beispiel – wir leiten die letzten zehn Zeilen einer Datei ab:
tail /var/log/syslog
Code language: JavaScript (javascript)
Wenn Sie keine 10 Zeilen benötigen und viel mehr benötigen, können Sie diesen Parameter mit der Option -n erhöhen:
tail -n 10 /var/log/syslog
Code language: JavaScript (javascript)
Wenn Sie das Erscheinen neuer Zeilen in der Datei verfolgen möchten, fügen Sie die Option -f hinzu:
tail -f /var/log/syslog
Code language: JavaScript (javascript)
Sie können mehrere Dateien gleichzeitig öffnen, indem Sie sie einfach in den Parametern auflisten:
tail /var/log/syslog /var/log/Xorg.0.log
Code language: JavaScript (javascript)
Sie können die Option -s verwenden, um die Aktualisierungsrate der Datei festzulegen. Standardmäßig werden die Daten einmal pro Sekunde aktualisiert, aber Sie können beispielsweise eine fünfsekündige Aktualisierung konfigurieren:
tail -f -s 5 /var/log/syslog
Code language: JavaScript (javascript)
Wenn Sie mehrere Dateien öffnen, wird der Dateiname vor dem Codeabschnitt angezeigt. Wenn Sie diesen Header entfernen möchten, fügen Sie die Option -q hinzu:
tail -q var/log/syslog /var/log/Xorg.0.log
Code language: JavaScript (javascript)
Wenn Sie nicht die Anzahl der Zeilen, sondern die Anzahl der Bytes interessiert, können Sie diese mit der Option -c angeben:
tail -c 500 /var/log/syslog
Code language: JavaScript (javascript)
Der Einfachheit halber können Sie nicht alle Zeilen auswählen, sondern diejenigen filtern, die Sie interessieren:
tail -f /var/log/syslog | grep err
Code language: JavaScript (javascript)
Dies ist besonders nützlich, wenn Sie Webserver-Protokolle analysieren oder Fehler in Echtzeit finden. Wenn die Datei nicht geöffnet wird, können Sie die Wiederholungsoption verwenden, um es erneut zu versuchen:
tail -f --retry /var/log/syslog | grep err
Code language: JavaScript (javascript)
Wie ich am Anfang des Artikels sagte, verfolgt die Option -f oder –follow standardmäßig die Datei anhand ihres Namens, aber Sie können den Verfolgungsmodus anhand des Dateideskriptors aktivieren, dann erhalten Sie alle Informationen, selbst wenn sich der Name ändert:
tail --follow=descriptor /var/log/syslog | grep err
Code language: JavaScript (javascript)
Schlussfolgerung
Der tail-Linux-Befehl wurde in diesem Artikel besprochen. Mit seiner Hilfe ist es sehr bequem, Protokolle verschiedener Dienste zu analysieren und auch nach Fehlern darin zu suchen. Ich hoffe, diese Informationen waren hilfreich für Sie.