Mit praktischen Tools wie Cat, Less oder Head durchforsten Sie nicht nur auf komfortablem Weg den Inhalt von Textdateien, sondern können auch Inhalte kombinieren, Dateiänderungen mitverfolgen oder Logfiles auswerten.
Es muss nicht immer ein Editor sein, wenn Sie Textdateien auf der Konsole betrachten wollen; oft ist es schneller, zu einem einfachen Betrachter zu greifen. Doch die in diesem Artikel vorgestellten Programme können noch mehr: Wenn Sie nach einer schnellen Möglichkeit suchen, mehrere Textdateien zu einer einzigen zusammenzufassen, ist Cat das Programm der Wahl. Der Artikel verrät weiterhin Tipps zu den Pagern More und Less und zeigt, wie das Arbeiten mit diesen Tools noch komfortabler wird. Wer sich für die ersten oder letzten Zeilen einer Datei interessiert, greift zu Head und Tail.
Catwalk
Mit Cat geben Sie Textdateien auf der Standardausgabe aus:
cat Datei.txt
Praktisch: Um die Ausgabe mit Zeilennummern zu versehen, verwenden Sie den Parameter -n (Abbildung 1). Wenn Sie statt einer reinen Textdatei eine Binärdatei mit Cat ausgeben, sind mitunter auf der Shell nur noch wirre Sonderzeichen zu erkennen. Geben Sie am Prompt – notfalls blind – den Befehl reset ein, um die Konsole wieder aufzuräumen.
Cat kann allerdings noch mehr: Der Name des Programms kommt aus dem Englischen (“to concatenate” = verbinden, verketten) – mit Cat “kleben” Sie Dateien aneinander. Um beispielsweise zwei Textdateien zu einer zusammenzufassen, nehmen Sie Cat und den >-Operator zur Hilfe:
cat Datei1 Datei2 > Datei3
Vorsicht ist hier geboten, wenn die Datei datei3 schon existiert – Cat überschreibt diese einfach. Verwenden Sie stattdessen den Operator >>, hängt Cat beide Dateien einfach nur an die dritte an:
cat Datei1 Datei2 >> Datei3
Mehr oder weniger
Wer Textdateien auf der Shell betrachten und in diesen blättern und suchen möchte, ist mit einem Pager, wie More oder Less, besser bedient. Um eine Datei seitenweise zu betrachten, geben Sie
more Datei
ein. Mit der Leertaste blättern Sie seitenweise nach unten, mit der Eingabetaste geht es zeilenweise nach vorne. Am unteren Bildschirmrand zeigt eine Statuszeile die prozentuale Position der dargestellten Seite innerhalb der Datei an. Mit [B] (“back”) blättern Sie eine Seite zurück, [H] zeigt eine kurze Hilfe an, und mit [Q] (“quit”) beenden Sie das Programm vorzeitig. Wenn Sie am Ende einer Datei angekommen sind, erledigt More dieses automatisch und beendet sich selbst.
More hat noch ein paar weitere praktische Tastenkürzel: Wer sich für die aktuelle Zeilennummer interessiert, drückt [Umschalt]+[0] (also das Gleichzeichen), und die Kombination [Umschalt]+[.],[F] (:f) blendet den Namen der Datei zusammen mit der Zeilennummer ein. Um in der Datei zu suchen, drücken Sie [Umschalt]+[7] (/) und geben den Suchbegriff ein.
More zeigt auf Wunsch mehrere Textdateien hintereinander an; dazu übergeben Sie beim Programmstart einfach alle Dateinamen. Der Pager macht den Anfang jeder neuen Datei kenntlich:
:::::::::::::: wget.txt ::::::::::::::
Zwischen den geöffneten Dateien springen Sie über Eingabe von :n (englisch “next” = “nächste”) bzw. :p (englisch “previous” = “vorige”) hin und her, wobei das Kommando :p zunächst an den Anfang der aktuellen Datei springt und erst über nochmalige Eingabe zur vorigen Textdatei wechselt.
Um eine Datei zu verändern, müssen Sie More nicht verlassen und den Lieblings-Texteditor starten. Drücken Sie einfach während des Betrachtens [V]. Standardmäßig startet nun der Editor Vi, und Sie können die Datei verändern. Soll More einen anderen Editor aufrufen, setzen Sie die Umgebungsvariable EDITOR, die auch viele andere Programme auswerten. Wer zum Beispiel gern mit Xemacs arbeitet, definiert die Variable mit dem Kommando:
export EDITOR=xemacs
Nach dem Schließen des Editors landen Sie wieder in More. Um die Umgebungsvariable EDITOR dauerhaft zu setzen, schreiben Sie den export-Aufruf in die Bash-Konfigurationsdatei ~/.bashrc und lesen die Datei über den Aufruf
source ~/.bashrc
neu ein.
Das Verhalten von More passen Sie durch Optionen, die Sie schon beim Programmstart angeben, weiter an Ihre eigenen Bedürfnisse an. Wenn Sie z. B. eine Datei mit vielen Leerzeilen haben, bringen Sie den Pager mit
more -s datei
dazu, viele aufeinander folgende leere Zeilen zu einer “zusammenzuschrumpfen”. Um nur zehn Zeilen des Fensters zum Betrachten der Datei zu nutzen, geben Sie beim Start die Option -10 an – damit More das beim Blättern nicht vergisst, hängen Sie zusätzlich die Option -p an.
Soll More immer dieselben Aufrufparameter verwenden, ersparen Sie sich Tipparbeit, indem Sie das Verhalten des Pagers über die Umgebungsvariable MORE regeln. Tragen Sie dazu in die Bash-Konfigurationsdatei ~/.bashrc beispielsweise
export MORE="-10 -p -s"
ein und lesen Sie die neuen Einstellungen über das Kommando
source ~/.bashrc
ein.
Weniger ist mehr
Als Nachfolger von More kennt Less dieselben Tastaturkommandos zur Steuerung, bringt aber auch einige Zusatzfunktionen mit. Wer nicht mit der Leertaste und [B] blättern möchte, nimmt einfach die Pfeiltasten zuhilfe. Mit [G] springen Sie direkt zum Dateianfang, [Umschalt]+[G] bringt Sie ans Ende. Darüber hinaus sucht Less nicht nur vorwärts über [Umschalt]+[7] (/), sondern auch rückwärts über das Fragezeichen.
Anders als More beendet sich dieser Pager nicht automatisch, wenn Sie das Dateiende erreicht haben, sondern Sie müssen das Programm explizit mit [Q] verlassen. Während More den Bildschirm beim Beenden nicht aufräumt und die letzte Textstelle noch auf der Konsole erscheint, räumt Less das Terminal auf. Dieses Verhalten unterbinden Sie, indem Sie schon beim Aufruf den Parameter -X einsetzen (Abbildung 2). Wie bei More können Sie auf für Less eine Umgebungsvariable mit Standardparametern definieren – um die Option -X immer zu verwenden, schreiben Sie in die Datei ~/.bashrc folgende Zeile:
export LESS="-X"

Abbildung 2: Die Anzeige von Less sehen Sie nach dem Verlassen im Terminal, wenn Sie das Programm mit dem Parameter “-X” starten.
Genau wie der Betrachter More greift Less auf die Umgebungsvariable EDITOR zurück und startet den definierten Texteditor, wenn Sie [V] drücken. Die Tastaturkommandos beim Betrachten mehrerer Dateien sind ebenfalls identisch: Übergeben Sie dem Programm beim Aufruf mehrere Dateinamen, springen Sie mit :n zur nächsten, und mit :p zur vorigen Datei. Anders als More merkt sich Less netterweise die Position im Text, an der Sie den Befehl eingetippt haben. Praktisch beim Arbeiten mit mehreren Dokumenten ist auch, dass Less in der Statuszeile am unteren Rand anzeigt, welche Datei die nächste ist:
textdateien.txt (file 1 of 2) (END) - Next: spellcheck.txt
Wer dann nicht mit :p zur nächsten Datei wechseln möchte, übergibt Less schon beim Start die Option -e. Dadurch wechselt Less automatisch zur nächsten Datei, wenn Sie bei der aktuellen Datei das Ende erreicht haben und nochmals die Leertaste, [Pfeil runter] oder [Seite runter] drücken.
Less bietet eine praktische Funktion zum Verfolgen von Änderungen in einer Datei: Drücken Sie im Pager [F], zeigt Less neu hinzukommende Zeilen direkt an. Das ist vor allem dann praktisch, wenn Sie mit Less Log-Dateien betrachten – die Statuszeile zeigt durch die Meldung Waiting for data... (interrupt to abort) an, dass Less Änderungen verfolgt (Abbildung 3). Mit [Strg-C] verlassen Sie den “Follow”-Modus und kehren zu den normalen Pager-Funktionen zurück.

F, zeigt Less neue Zeilen in einer Datei direkt an.” width=”300″ height=”193″ />
Abbildung 3: Drücken Sie im laufenden BetriebF, zeigt Less neue Zeilen in einer Datei direkt an.Gepackt und zugeschnürt
Für das Betrachten von gezippten Dateien gibt es die Kommandos Zless und Zmore, welche dieselben Kommandos zur Tastatursteuerung wie die beiden Pager mitbringen. Statt eines zusammengesetzten Kommandos, wie z. B.
zcat Xinerama-HOWTO.gz | less
schreiben Sie einfach direkt
zless Xinerama-HOWTO.gz
und lesen die komprimierte Datei am Bildschirm.
Von Kopf bis Fuß
Wenn Sie nur die ersten oder letzten Zeilen von Textdateien betrachten wollen, ist der Start von Less oder More etwas umständlich – schneller geht’s mit Head und Tail. Der Befehl
head Datei.txt
zeigt die ersten zehn Zeilen der Datei am Bildschirm an. Darf es etwas mehr oder weniger sein? Mit der Option -n Zahl teilen Sie Head mit, wie viel Text das Programm präsentieren soll. Hängen Sie direkt mehrere Dateien an den Aufruf an, macht Head durch Überschriften die einzelnen Dateien kenntlich (Abbildung 4).

Abbildung 4: Wie viele Zeilen sollen’s denn sein? Head zeigt auf Wunsch nur die jeweils ersten fünf Zeilen mehrerer Dateien hintereinander an.
Als Pendant für das Dateiende leistet Tail gute Dienste. Geben Sie nichts anderes an, zeigt Tail die letzten zehn Zeilen einer Datei auf der Konsole. Auch hier können Sie wieder mit -n Zahl eine neue Zeilenanzahl definieren. Tail akzeptiert genau wie Head mehrere Dateinamen als Argumente und präsentiert diese deutlich voneinander abgetrennt.
Tail bringt jedoch noch mehr praktische Features mit: Die wohl am häufigsten gebrauchte Option ist -f. Wie schon für den Pager Less gezeigt, springt Tail nun in eine Art “Verfolgungs”-Modus und protokolliert Veränderungen. Praktisch ist das vor allem für Log-Dateien; so schaut Tail mit dem Aufruf
tail -f /var/log/messages
in einer Endlosschleife ständig nach Veränderungen und zeigt die neuesten Einträge an. Um diese Beobachtung abzubrechen, drücken Sie [Strg]+[C].





