So verwenden Sie den Befehl head unter Linux

Schnellzugriffe

  • Was ist der head-Befehl unter Linux?
  • head-Befehlsoptionen
  • Abrufen einer bestimmten Zeilenanzahl
  • Abrufen einer bestimmten Anzahl von Bytes mit „head“
  • Anzeigen bestimmter Zeichen in einer Datei
  • Anzeigen des Headers/Dateinamens mit „head“
  • Anzeigen des Inhalts mehrerer Dateien mit „head“
  • Verwenden von „head“ mit anderen Befehlen
  • Möchten Sie Zeilenenden mit „head“ anzeigen?

Wichtige Erkenntnisse

  • Der Linux-Befehl „head“ allein, beispielsweise „head example.txt“, listet die ersten zehn Zeilen einer Textdatei oder Eingabe auf.
  • Sie können den Befehl head anpassen, um eine bestimmte Anzahl von Zeilen anzuzeigen, indem Sie die Option „-n“ verwenden, oder die Ausgabe mit der Option „-c“ auf bestimmte Bytes beschränken.
  • Sie können den Befehl head auch für eine selektive Systemüberwachung in Echtzeit verwenden, indem Sie Protokolle und andere Textdateien analysieren, die sich im Laufe der Zeit ändern können.

Unter Linux gibt es verschiedene Befehle, um den gesamten Inhalt einer Textdatei abzurufen. Aber was, wenn Sie einen bestimmten Teil oder ein paar Anfangszeilen benötigen? Der Befehl head druckt den anfänglichen Inhalt einer Datei auf dem Terminal.

Was ist der Befehl head unter Linux?

Linux verfügt über mehrere Befehle zum Anzeigen von Dateiinhalten. Die beliebtesten und am häufigsten verwendeten sind die Befehle cat, less und view. Diese Befehle sind jedoch nützlicher zum Anzeigen großer Dateiteile. Wenn Sie nur eine bestimmte Anzahl von Zeilen einer Datei anzeigen müssen, ist der Befehl head für Sie da.

Der Befehl head macht das Gegenteil von dem Befehl tail. Er zeigt den Anfangsinhalt einer Datei an, während der Befehl tail die Endzeilen einer Datei druckt. Standardmäßig zeigt head die ersten 10 Zeilen an. Wenn Sie mehr oder weniger als 10 Zeilen drucken möchten, verwenden Sie einfach die Option -n. Ebenso kann die Option -c mit dem Befehl head die Ausgabe auf eine bestimmte Bytezahl beschränken.

Der Befehl head kann Protokolle und andere Textdateien analysieren, die sich im Laufe der Zeit ändern können. Sie können den Befehl head in Verbindung mit anderen Befehlen für eine selektive Echtzeitüberwachung verwenden.

Die Syntax des Befehls head ist leicht zu verstehen und ähnelt anderen Linux-Befehlen:

head [OPTION]… [FILE]…

Der Befehl head kann eine oder mehrere Dateien als Eingaben verwenden. Er akzeptiert auch einige Optionen, die sein Verhalten und seine Ausgabe ändern. Wenn keine Datei angegeben ist, liest der Befehl head von der Standardeingabe.

Um die Version des Befehls head zu überprüfen, verwenden Sie:

head –version

Geben Sie in ähnlicher Weise den folgenden Befehl ein, um das Hilfemenü des Befehls head auszugeben:

head –help

Optionen des head-Befehls

Sie können mit dem head-Befehl unter Linux verschiedene Optionen verwenden. Jede Option hat eine prägnante und eine erweiterte Form, die mit grundlegender Syntax verwendet werden kann. Sie steuert, wie viele Daten der head-Befehl in die normale Ausgabe druckt. Sie können damit beispielsweise entscheiden, ob der Header in die Dateiausgabe aufgenommen werden soll oder nicht.

Die folgende Tabelle enthält die Liste der für den Befehl head verfügbaren Optionen:

Option

Beschreibung

-n oder –lines

Definiert die Anzahl der Zeilen, die vom Anfang an angezeigt werden sollen.

-c oder –bytes

Zeigt die angegebene Anzahl von Bytes vom Anfang an.

-v oder –verbose

Druckt jeden Dateinamen zusammen mit dem Dateiinhalt. Dies ist nützlich, wenn mehrere Dateien gleichzeitig angezeigt werden.

-q oder –quiet

Unterdrückt das Drucken von Dateinamen, bevor deren Inhalt angezeigt wird. Dies ist nützlich, wenn nur eine Datei angezeigt wird oder wenn die Ausgabe an einen anderen Befehl weitergeleitet wird.

-z oder –zero-terminated

Ersetzen Sie das Zeilenumbruchzeichen am Ende jeder Zeile durch NULL.

Bevor wir mit der Demonstration des Head-Befehls fortfahren, schauen wir uns zunächst den Inhalt der Beispieldatei an. Verwenden Sie den Befehl cat, gefolgt vom Dateinamen, um alle Daten der Beispieldatei abzurufen.

cat example.txt

Diese Beispieldatei enthält 15 Textzeilen.

Drucken wir nun den Inhalt der Datei example.txt mit dem Befehl head aus. Der Befehl head ohne Optionen druckt die ersten 10 Zeilen der Datei.

head example.txt

Eine bestimmte Anzahl von Zeilen abrufen

Um mit dem Befehl head eine bestimmte Anzahl von Zeilen anzuzeigen, fügen Sie die Option -n (–lines) gefolgt vom Dateinamen hinzu.

Um die ersten vier Zeilen von example.txt anzuzeigen, führen Sie Folgendes aus:

head -n 4 example.txt

Ebenso kann mit der Option -n eine negative Zahl angegeben werden. Dadurch werden die letzten N Zeilen einer Datei übersprungen. Dies ist hilfreich, wenn Sie am Ende einer Datei einige Zeilen überspringen möchten.

Um beispielsweise die letzten beiden Zeilen der Datei example.txt zu überspringen, führen Sie Folgendes aus:

head -n -2 example.txt

Bestimmte Anzahl von Bytes mit head abrufen

Ein weiterer Anwendungsfall für den Befehl head ist das Abrufen einer bestimmten Anzahl von Bytes vom Anfang einer Datei. Sie können dies tun, indem Sie die Option -c (–bytes) gefolgt von einer Ziffer verwenden.

Nehmen wir an, Sie haben dieselbe Datei example.txt und sie enthält 15 Textzeilen. Um die ersten 20 Bytes abzurufen, führen Sie Folgendes aus:

head -c 20 example.txt

Da die Datei example.txt ASCII-Zeichen enthält, nimmt jedes Zeichen einschließlich des Leerzeichens und einer neuen Zeile ein Byte ein.

Mit der Option -c kann auch eine negative Zahl definiert werden. Dadurch werden alle Bytes einer Datei außer den letzten N Bytes angezeigt. Um alle Bytes in example.txt außer den letzten 13 Bytes anzuzeigen, führen Sie Folgendes aus:

head -c -13 example.txt

Bestimmte Zeichen in einer Datei anzeigen

Manchmal müssen Sie einen bestimmten Teil einer Datei sehen, anstatt den gesamten Dateiinhalt. Nehmen wir an, Sie haben eine Datei mit mehreren Zeilen Inhalt und möchten die ersten oder letzten Zeichen jeder Zeile sehen. Dazu müssen Sie den Befehl head mit anderen Textverarbeitungsbefehlen wie cut, awk oder sed weiterleiten.

Um beispielsweise den ersten Buchstaben jeder Zeile von example.txt abzurufen, verwenden Sie den Befehl cut mit der Option -c, gefolgt von der Zeichenposition. Standardmäßig erhalten Sie den Startbuchstaben der ersten 10 Zeilen, sofern Sie nicht die Anzahl der Ausgabezeilen angeben.

head example.txt | cut -c 1

Um das letzte Wort jeder Zeile von example.txt anzuzeigen, verwenden Sie den Befehl awk mit dem Muster {print $NF}. Verwenden Sie den Pipe-Operator (|), um sowohl head- als auch awk-Befehle zu pipen. Auf diese Weise dient die Ausgabe des head-Befehls als Eingabe für den awk-Befehl.

Wenn Sie {print $NF} verwenden, weist es awk an, den Wert des letzten Felds für jede Zeile in der Eingabe zu drucken. Wenn Sie $NF verwenden, müssen Sie nicht im Voraus wissen, wie viele Felder jede Zeile hat; awk erledigt dies automatisch für Sie und extrahiert das letzte Feld.

head example.txt | awk '{print $NF}'

Header/Dateinamen mit Kopf anzeigen

Wenn der Befehl head mit einer einzelnen Datei verwendet wird, wird der Dateiname standardmäßig nicht gedruckt. Bei Verwendung mit mehreren Dateien kann der Dateiname jedoch angezeigt werden.

Verwenden Sie die Option -v, um den Dateinamen zusammen mit seinem Inhalt abzurufen. Diese Option druckt einen Header mit dem Dateinamen der angegebenen Datei.

head -v example.txt

Anzeigen von Inhalten mehrerer Dateien mit head

Der Befehl head kann auch mehrere Dateinamen als Argumente annehmen und deren Inhalte der Reihe nach anzeigen. Nehmen wir zwei Dateien namens example.txt und test.txt, die mehrere Zeilen Inhalt enthalten. Jetzt zeigt der Befehl head beide Dateinamen zusammen mit ihrem Inhalt an.

head example.txt test.txt

Sie können den Befehl head mit der Option -q verwenden, um den Inhalt mehrerer Dateien anzuzeigen, ohne deren Namen anzuzeigen.

head -q example.txt test.txt

Verwenden von head mit anderen Befehlen

Der Befehl head kann auch mit anderen Befehlen verwendet werden, um verschiedene Aufgaben auszuführen. Sie können ihn mit den Befehlen tail, more, wc und grep verwenden.

Sie können den Befehl head mit grep weiterleiten, um alle Zeilen zu erhalten, die das angegebene Muster enthalten.

head example.txt | grep ch

Die obige Syntax zeigt alle Zeilen in der Datei example.txt an, die „ch“ enthalten.

Sie können den Befehl head auch mit dem Befehl wc weiterleiten. Beide Befehle geben die Gesamtzahl der Zeilen, Wörter und Bytes in der Datei aus.

Um die Anzahl der Zeilen, Wörter und Bytes in der Datei example.txt abzurufen, führen Sie Folgendes aus:

head example.txt | wc

Sie können die Befehle head und tail zusammen mit dem Pipe-Symbol verwenden, um einen bestimmten Zeilenbereich aus einer Datei anzuzeigen. Der Befehl head zeigt die Startzeilen einer Datei an, während der Befehl tail die Endzeilen einer Datei druckt.

Betrachten Sie die Datei example.txt, die 15 Zeilen enthält. Um den Inhalt zwischen der 5. und 11. Zeile anzuzeigen, führen Sie Folgendes aus:

head -n 10 example.txt | tail -n 5

Dieser Befehl funktioniert, indem er zuerst den Befehl head -n 10 verwendet, um die ersten 10 Zeilen der Datei anzuzeigen. Danach wird die Ausgabe an den Befehl tail -n 5 weitergeleitet. Der Befehl tail gibt uns die endgültige Ausgabe der Entitäten, die zwischen der 5. und 11. Zeile stehen.

Möchten Sie Zeilenenden mit head anzeigen?

Der Befehl head befasst sich, wie sein Name schon sagt, hauptsächlich mit den Anfangszeilen einer Datei. Der Befehl tail hingegen dient dazu, die Schlusszeilen einer Textdatei anzuzeigen. Normalerweise werden neue Daten am Ende einer Datei hinzugefügt, sodass der Befehl tail eine schnelle und einfache Möglichkeit ist, die neuesten Ergänzungen einer Datei anzuzeigen. Er kann auch eine Datei überwachen und jeden neuen Texteintrag in dieser Datei anzeigen, sobald er auftritt.

Genau wie mit dem Head-Befehl können Sie auch mit Tail mehrere Dateien überwachen oder die Anzahl der Bytes zählen. Außerdem kann damit ein bestimmtes Muster oder eine Texteinfügung in der Textdatei überprüft werden. Dies macht es zu einem großartigen Tool zum Überwachen von Protokolldateien.


Posted

in

by

Tags:

Comments

Leave a Reply