Einführung in die Shell-Programmierung

Shells

Head or Tail



"can't make head or tail of something" bedeutet, dass man etwas nicht verstehen kann oder verwirrt ist, aber die Befehle "head" und "tail", wörtlich "Kopf" und "Schwanz", sind recht einfach zu verstehen. Sie dienen dazu, dass man sich selektiv eine bestimmte Anzahl von Zeilen am Anfang oder  Ende einer  Datei anzuschauen kann.

tail daten.txt

Obiger Befehl druckt zum Beispiel die letzten 10  Zeilen der Datei "daten.txt" aus. Will man z.B. die letzten 7 Zeilen haben, so kann man folgenden Befahl benutzen:

tail -7 daten.txt

Manchmal möchte man auch alle Zeilen einer Datei außer einer bestimmten Anzahl am Anfang sehen, also zum Beispiel alle außer den ersten 3 Zeilen:

tail +4 daten.txt

Dieses Kommando druckt alle Zeilen ab (und inklusive) der 4. Zeile.


Wie der Name bereits vermuten lässt, ist der Befehl "head" äquivalent zu tail, nur das sich die Operationen auf den Anfang einer Datei auswirken.

head daten.txt

druckt  die ersten zehn Zeilen der Datei daten.txt.

Allerdings funktioniert die "plus"-Variante nicht, d.h. head +2 daten.txt druckt nicht, wie man erwarten würde, alle außer der letzten Zeile, sondern führt zu der Fehlermeldung "head: ,,+2" kann nicht zum Lesen geöffnet werden: Datei oder Verzeichnis nicht gefunden"

Sehr interessant ist das Zusammenspiel der beiden Befehle. So liefert einem

tail +4 daten.txt | head -3 

die Zeilen 4 bis  6.  (4. und 6. Zeile inklusive)





© Copyright 2004 - 2008, Bodenseo, Linux-Kurse am Bodensee, Bernd Klein