»Humor sollte immer dabeisein,
auch bei Problemen.«
– Helge Schneider
9 Konsolentools
Rollmops mit Gurke und dazu süßer Kuchen schmeckt furchtbar – trotzdem wollen wir an dieser Stelle einen abrupten Themenwechsel vornehmen und uns im folgenden Kapitel einigen weiteren essenziellen Anwenderprogrammen für die Kommandozeile zuwenden. Viele dieser Programme sind besonders in der Shellskriptprogrammierung von Nutzen. Wir werden uns im Folgenden zunächst die Tools ansehen, mit denen wir den Inhalt einer Datei auf eine bestimmte Weise ausgeben können. In vorherigen Kapiteln lernten Sie bereits die Tools more und less kennen, die in diese Kategorie gehören. Nun sehen wir uns auch die Werkzeuge head, tail und nl an.
Im Anschluss werden wir Tools betrachten, mit denen eine manipulierte Ausgabe des Dateiinhalts möglich ist: cut, tr, paste, column, colrm, tac, sort, od und uniq. Anschließend werfen wir noch einen Blick auf ein Tool zur Dateisuche (find) und außerdem auf:
- split, mit dem man den Dateiinhalt in mehrere Teile aufspalten kann;
- wc, das Zeichen, Zeilen und Wörter von Dateiinhalten zählt;
- mc, einen Dateimanager für die Konsole; und
- bc, ein Rechenprogramm.
9.1 head, tail und nl – Dateiinhalte zeigen
head & tail
Mit dem Programm headkann der Anfang einer Datei ausgegeben werden. Standardmäßig sind dies immer die ersten 10 Zeilen. Das Programm tail hingegen gibt die letzten Zeilen einer Datei – standardmäßig die letzten fünf – aus. Dabei kann allerdings die Anzahl der auszugebenden Zeilen optional verändert werden:
Listing 9.1 Die ersten sieben Zeilen ausgeben (Variante 1)
$ head -n 7 /etc/passwd
Listing 9.2 Die ersten sieben Zeilen ausgeben (Variante 2)
$ head –7 /etc/passwd
Das Programm tail verfügt übrigens über eine weitere äußerst nützliche Funktion: 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 dann nützlich, wenn es um die Überwachung von Logdateien geht.
Mit tail -f /var/log/messages können Sie beispielsweise veranlassen, 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 – wird vor jede Zeile der Ausgabe eine Nummer gesetzt.
Ihr Kommentar
Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.