So verwenden Sie den tail-Befehl unter Linux

Fatmawati Achmad Zaenuri/Shutterstock
Das Linux |_+_| Befehl zeigt Daten vom Ende einer Datei an. Es kann sogar Aktualisierungen anzeigen, die einer Datei in Echtzeit hinzugefügt wurden. Wir zeigen Ihnen, wie Sie es verwenden.
Hat systemd den Schwanz getötet?
Die |_+_| Befehl zeigt Ihnen Daten vom Ende einer Datei. Normalerweise werden neue Daten am Ende einer Datei hinzugefügt, sodass |_+_| Befehl ist eine schnelle und einfache Möglichkeit, die neuesten Ergänzungen zu einer Datei anzuzeigen. Es kann auch eine Datei überwachen und jeden neuen Texteintrag in dieser Datei anzeigen, wenn er auftritt. Dies macht es zu einem großartigen Tool zum Überwachen von Protokolldateien.
Viele moderne Linux-Distributionen haben übernommen die |_+_| System- und Servicemanager . Dies ist der erste ausgeführte Prozess, er hat Prozess-ID 1 , und es ist das übergeordnete Element aller anderen Prozesse. Diese Rolle war früher behandelt von den Älteren |_+_| System.
Zusammen mit dieser Änderung kam ein neues Format für Systemprotokolldateien. Nicht mehr im Klartext erstellt, unter |_+_| sie werden in einem binären Format aufgezeichnet. Zu diese Protokolldateien lesen, müssen Sie verwenden die |_+_| Dienstprogramm. Die |_+_| Der Befehl funktioniert mit Nur-Text-Formaten. Es liest keine Binärdateien. Bedeutet das also die |_+_| Befehl ist eine Lösung auf der Suche nach einem Problem? Hat es noch etwas zu bieten?
Es gibt noch mehr zum |_+_| Befehl als das Anzeigen von Updates in Echtzeit. Außerdem gibt es immer noch viele Protokolldateien, die nicht vom System generiert werden und immer noch als reine Textdateien erstellt werden. Zum Beispiel Protokolldateien, die von Anwendungen haben ihr Format nicht geändert.
Schwanz benutzen
Übergeben Sie den Namen einer Datei an |_+_| und es zeigt Ihnen die letzten zehn Zeilen aus dieser Datei. Die von uns verwendeten Beispieldateien enthalten Listen mit sortierten Wörtern. Jede Zeile ist nummeriert, daher sollte es leicht sein, den Beispielen zu folgen und zu sehen, welche Auswirkungen die verschiedenen Optionen haben.
tail
Anzeige
Um eine andere Anzahl von Zeilen anzuzeigen, verwenden Sie |_+_| (Anzahl der Zeilen) Option:
tail
Eigentlich können Sie auf das -n verzichten und nur einen Bindestrich verwenden - und die Zahl. Stellen Sie sicher, dass keine Leerzeichen dazwischen sind. Technisch, Dies ist eine veraltete Befehlsform , aber es ist noch in der man-Seite , und es funktioniert immer noch.
tail
Tail mit mehreren Dateien verwenden
Du kannst |_+_| . haben mit mehreren Dateien gleichzeitig arbeiten. Übergeben Sie einfach die Dateinamen in der Befehlszeile:
systemd
Für jede Datei wird eine kleine Kopfzeile angezeigt, damit Sie wissen, zu welcher Datei die Zeilen gehören.
Anzeigen von Zeilen am Anfang einer Datei
Die |_+_| (von Anfang an zählen) Modifikator macht |_+_| Zeilen ab dem Anfang einer Datei anzeigen, beginnend mit einer bestimmten Zeilennummer. Wenn Ihre Datei sehr lang ist und Sie eine Zeile in der Nähe des Dateianfangs auswählen, werden viele Ausgaben an das Terminalfenster gesendet. Wenn dies der Fall ist, ist es sinnvoll, die Ausgabe von |_+_| . weiterzuleiten in |_+_|.
init
Sie können kontrolliert durch den Text blättern .
Da diese Datei zufällig 20.445 Zeilen enthält, entspricht dieser Befehl der Verwendung der Option -6:
systemd
Verwenden von Bytes mit Schwanz
Du kannst |_+_| . sagen um Offsets in Bytes anstelle von Zeilen zu verwenden, indem Sie |_+_| . verwenden (Byte)-Option. Dies kann nützlich sein, wenn Sie eine Textdatei haben, die in Datensätzen normaler Größe formatiert wurde. Beachten Sie, dass ein Newline-Zeichen als ein Byte zählt. Dieser Befehl zeigt die letzten 93 Bytes in der Datei an:
journactl
Sie können die |_+_| . kombinieren (Bytes) Option mit |_+_| (count from the start of the file) -Modifizierer und geben Sie einen Offset in Bytes an, die ab dem Anfang der Datei gezählt werden:
tail
Paspel in den Schwanz
Zuvor haben wir die Ausgabe von |_+_| . weitergeleitet in |_+_| . Wir können auch die Ausgabe anderer Befehle an |_+_| weiterleiten.
Um die fünf Dateien oder Ordner mit den ältesten Änderungszeiten zu identifizieren, verwenden Sie die |_+_| (nach Änderungszeit sortieren) Option mit |_+_| , und leiten Sie die Ausgabe in |_+_|.
tail
Die |_+_| Befehl listet Textzeilen vom Anfang einer Datei auf . Wir können dies mit |_+_| . kombinieren um einen Abschnitt der Datei zu extrahieren. Hier verwenden wir die |_+_| Befehl zum Extrahieren der ersten 200 Zeilen aus einer Datei. Dies wird in |_+_| geleitet, das die letzten zehn Zeilen extrahiert. Dadurch erhalten wir die Zeilen 191 bis Zeile 200. Das sind die letzten zehn Zeilen der ersten 200 Zeilen:
tail
Dieser Befehl listet die fünf speicherintensivsten Prozesse auf.
tail
Lassen Sie uns das aufschlüsseln.
Die |_+_| Befehl zeigt Informationen über laufende Prozesse an . Die verwendeten Optionen sind:
- & rsaquo; Cyber Monday 2021: Die besten Tech-Deals
- & rsaquo; Cyber Monday 2021: Die besten Apple-Angebote
- › Funktionen vs. Formeln in Microsoft Excel: Was ist der Unterschied?
- › 5 Websites, die jeder Linux-Benutzer mit einem Lesezeichen versehen sollte
- › So finden Sie Ihr Spotify Wrapped 2021
- › Der Computerordner ist 40: Wie Xerox Star den Desktop erstellte
Die |_+_| Befehl sortiert die Ausgabe von |_+_| . Die Optionen, die wir mit |_+_| . verwenden sind:
Die |_+_| Befehl zeigt die letzten fünf Prozesse aus der sortierten Ausgabe an. Dies sind die fünf speicherhungrigsten Prozesse.
Verwenden von tail zum Verfolgen von Dateien in Echtzeit
Das Verfolgen neuer Texteinträge, die in einer Datei – normalerweise einer Protokolldatei – eingehen, ist mit |_+_| einfach. Übergeben Sie den Dateinamen in der Befehlszeile und verwenden Sie das |_+_| (folgen) Option.
-n
Wenn jeder neue Protokolleintrag zur Protokolldatei hinzugefügt wird, aktualisiert tail seine Anzeige im Terminalfenster.
Sie können die Ausgabe so verfeinern, dass sie nur Zeilen von besonderer Relevanz oder Interesse enthält. Hier verwenden wir |_+_| zu nur Zeilen anzeigen, die enthalten das Wort Durchschnitt:
tail
Um die Änderungen an zwei oder mehr Dateien zu verfolgen, übergeben Sie die Dateinamen in der Befehlszeile:
+
Jeder Eintrag ist mit einer Kopfzeile versehen, die anzeigt, aus welcher Datei der Text stammt.
Die Anzeige wird jedes Mal aktualisiert, wenn ein neuer Eintrag in einer verfolgten Datei eintrifft. Um den Aktualisierungszeitraum anzugeben, verwenden Sie |_+_| (Schlafperiode) Option. Dies sagt |_+_| um einige Sekunden, in diesem Beispiel fünf, zwischen den Dateiprüfungen zu warten.
tail
Zugegeben, man kann es nicht anhand eines Screenshots erkennen, aber die Updates zur Datei passieren alle zwei Sekunden. Die neuen Dateieinträge werden im Terminalfenster angezeigt einmal alle fünf Sekunden.
Wenn Sie den Textergänzungen in mehr als einer Datei folgen, können Sie die Kopfzeilen unterdrücken, die angeben, aus welcher Protokolldatei der Text stammt. Verwenden Sie die |_+_| (leise) Möglichkeit dazu:
tail
Die Ausgabe der Dateien wird in einer nahtlosen Textmischung angezeigt. Es gibt keinen Hinweis, aus welcher Protokolldatei jeder Eintrag stammt.
Schwanz hat immer noch Wert
Obwohl der Zugriff auf die Systemprotokolldateien jetzt von |_+_| bereitgestellt wird, |_+_| hat noch einiges zu bieten. Dies gilt insbesondere, wenn es in Verbindung mit anderen Befehlen verwendet wird, indem in oder aus |_+_| geleitet wird.
|_+_| könnte die Landschaft verändert haben, aber es gibt immer noch einen Platz für traditionelle Dienstprogramme, die der Unix-Philosophie entsprechen, eine Sache zu tun und sie gut zu machen.
VERBUNDEN: Beste Linux-Laptops für Entwickler und Enthusiasten
WEITER LESEN
Dave McKay benutzte zum ersten Mal Computer, als Lochstreifen in Mode waren, und programmiert seitdem. Nach über 30 Jahren in der IT-Branche ist er heute hauptberuflich Technologiejournalist. Im Laufe seiner Karriere war er als freiberuflicher Programmierer, Leiter eines internationalen Softwareentwicklungsteams, Projektleiter für IT-Services und zuletzt als Datenschutzbeauftragter tätig. Sein Schreiben wurde von howtogeek.com, cloudavvyit.com, itenterpriser.com und opensource.com veröffentlicht. Dave ist ein Linux-Evangelist und Open-Source-Verfechter.
Vollständige Biografie lesen