Humor sollte immer dabeisein, auch bei Problemen. -- Helge Schneider
5 Tools zur Dateibearbeitung
Rollmops mit Gurke und dazu süßer Kuchen schmeckt furchtbar. Doch nun zum nächsten Abschnitt: den Tools zur Dateibearbeitung für die Kommandozeile. Wir werden uns im Folgenden zunächst die Tools ansehen, mit denen wir den Inhalt einer Datei auf eine bestimmte Weise ausgeben können. Im zweiten Kapitel lernten Sie bereits die Tools more und less kennen, die in diese Kategorie gehören. Nun sehen wir uns head, tail und nl an.
Danach werden wir die Tools betrachten, mit denen eine manipulierte Ausgabe des Dateiinhalts möglich ist:
cut, tr, paste, tac, sort und uniq.
Anschließend werfen wir noch einen Blick auf ein Tool zur Dateisuche (find) und auf diese Tools:
- od, ein Programm ,mit dem man den Dateiinhalt auf Basis verschiedener Zahlen ausgeben kann,
- split, ein Programm, mit dem man den Dateiinhalt auf mehrere Teile aufspalten kann,
- wc, ein Programm, das Zeichen, Zeilen und Wörter von Dateiinhalten zählt.
5.1 head, tail und nl – den Dateiinhalt zeigen
head & tail
Mit dem Programm head können die ersten Zeilen einer Datei ausgegeben werden. Standardmäßig sind dies immer die ersten fünf Zeilen. tail hingegen gibt die letzten Zeilen einer Datei – standardmäßig die letzten fünf – aus. Dabei kann allerdings die Anzahl der auszugebenden Dateien optional verändert werden:
$ head -n 7 /etc/passwd
Listing 5.1 Die ersten 7 Zeilen ausgeben (Variante 1)
oder:
$ head –7 /etc/passwd
Listing 5.2 Die ersten 7 Zeilen ausgeben (Variante 2)
Das Programm tail verfügt übrigens über eine weitere äußerst nützliche Funktionalität: Es kann mittels des Parameters -f die letzten Zeilen einer Datei ausgeben und bleibt dann so lange aktiv, bis es beendet wird, wobei die jeweils von anderen Programmen in diese Datei geschriebenen Zeilen automatisch auf dem Bildschirm ausgegeben werden.
Dies ist besonders nützlich, wenn es um die Überwachung von Logdateien geht.
Mit tail -f /var/log/messages kann beispielsweise bezweckt werden, dass Sie auf dem Terminal (vorzugsweise xterm oder einem ähnlichen) ständig die aktuellen Logmeldungen des Systems einsehen können, ohne irgendwelche neuen Befehle aufrufen zu müssen.
nl
Das Programm nl gibt Ihnen ebenfalls den Dateiinhalt zeilenweise aus. Allerdings – und das ist besonders dann von Nutzen, wenn man Quellcode erklären möchte und mit Zeilennummern arbeiten will o. Ä. – wird vor jede Zeile der Ausgabe eine Zeilennummer gesetzt.