Weitere Basisbefehle für das Lesen von Textdateien

Es wurden bereits einige grundlegende Befehle für die Shell Prompt vorgestellt, die das Lesen von Dateien erläutern. Im Folgenden noch einige mehr:

Der Befehl head

Sie verwenden den Befehl head, wenn Sie einen Blick auf den Anfang einer Datei werfen möchten:

head <filename>

Head kann ein nützlicher Befehl sein. Da er sich jedoch auf die Ausgabe der ersten Zeilen beschränkt, sehen Sie nicht, wie lang die Datei wirklich ist. Standardmäßig können Sie nur die ersten zehn Zeilen einer Datei lesen, Sie können aber auch eine andere Anzahl wie folgt angeben:

head -20 <filename>

Der Befehl tail

Das Gegenteil des Befehls head ist der Befehl tail. Anhand dieses Befehls werden die letzten zehn Zeilen einer Datei angezeigt.

Der Befehl grep

Der Befehl grep ist für das Suchen nach bestimmten Zeichenketten in einer Datei bestens geeignet. Angenommen, Sie suchen nach Fundstellen für das Wort "Kaffee" in der Datei sneakers.txt. Geben Sie Folgendes ein:

grep Kaffee sneakers.txt

Daraufhin werden alle Zeilen angezeigt, die das Wort "Kaffee" enthalten.

TipBeachten Sie immer die Groß- und Kleinschreibung
 

Wenn Sie nichts anderes angeben, wird bei der Suche mit grep zwischen Groß- und Kleinschreibung unterschieden. Dies bedeutet, dass Sie bei der Suche nach Kaffee andere Ergebnisse erhalten als bei der Suche nach kaffee. Wenn Sie die Unterscheidung zwischen Groß- und Kleinbuchstaben aufheben möchten, steht Ihnen bei grep die Option -i zur Verfügung. Weitere Informationen zu diesem Befehl finden Sie in der man-Seite zu grep.

E/A-Umleitung und Pipes

Beim Speichern und/oder Drucken von Informationen, die Sie sich zu einem späteren Zeitpunkt durchlesen möchten, können Sie selbstverständlich auch die Funktionen nutzen, die Ihnen Pipes und die Umleitung der Ausgabe zur Verfügung stellen.

Sie können beispielsweise grep für die Suche nach bestimmten Daten in einer Datei verwenden und die Ergebnisse dieser Suche dann entweder in einer Datei speichern oder an einen Drucker weiterleiten.

Für das Drucken aller Fundstellen für "Kaffee" in sneakers.txt müssen Sie lediglich Folgendes eingeben:

grep coffee sneakers.txt | lpr

Platzhalter und reguläre Ausdrücke

Wie können Sie vorgehen, wenn Sie den Namen der gesuchten Datei vergessen haben? Mithilfe von Platzhaltern oder regulären Ausdrücken können Sie Aktionen in einer oder mehrerer Dateien ausführen, ohne den vollständigen Dateinamen zu wissen. Geben Sie den Teil des Namens an, an den Sie sich erinnern, und ersetzen Sie den Rest durch einen Platzhalter.

TipWeitere Informationen über Platzhalter und reguläre Ausdrücke
 

Wenn Sie weitere Informationen über Platzhalter und reguläre Ausdrücke benötigen, können Sie die man-Seite zu bash mit dem Befehl man bash aufrufen. Sie erinnern sich mit Sicherheit noch, dass Sie die Datei mit dem Befehl man bash | col -b > bash.txt in einer Textdatei speichern können. Dann können Sie die Datei mit less oder pico öffnen und lesen (der Befehl lautet pico bash.txt). Wenn Sie die Datei ausdrucken möchten, sollten Sie allerdings berücksichtigen, dass diese man-Seite ziemlich umfangreich ist.

Da Sie wissen, dass der Dateiname "sneak-irgendetwas.txt" lautet, geben Sie folgenden Befehl ein:

ls sneak*.txt

Auf diese Weise erfahren Sie dann den Namen der Datei:

sneakers.txt

Vermutlich werden Sie künftig beim Suchen mit Platzhaltern am häufigsten ein Sternchen (*) verwenden. Mit Hilfe von Sternchen werden als Ergebnis Ihrer Suche alle Objekte angezeigt, die Ihrem Suchbegriff entsprechen. Geben Sie probeweise Folgendes ein:

ls *.txt

oder:

ls sn*

Auf diese Weise werden sneakers.txt und alle anderen Dateien angezeigt, deren Name mit "sn" beginnt. Sie sollten Ihre Suche daher so weit wie möglich einschränken.

Eine Methode zum Einschränken der Suche besteht in der Verwendung des Fragezeichens (?) in Ihrem Suchbegriff. Ähnlich wie bei Verwendung eines Sternchens können Sie auch mit ? nach Dateien suchen, die Ihrem Suchmuster entsprechen.

Allerdings dient ? nur als Platzhalter für ein einzelnes Zeichen. Wenn Sie also nach sneaker?.txt suchen, erhalten Sie sneakers.txt als Ergebnis - und/oder sneakerz.txt, wenn es eine Datei diesen Namens geben würde.

Wenn ein Sternchen tatsächlich Bestandteil des Dateinamens sein sollte, wie beispielsweise bei einer Datei mit der Bezeichnung sneak*.txt (statt sneakers.txt), bietet sich die Verwendung regulärer Ausdrücke an.

Reguläre Ausdrücke sind komplizierter zu verwenden als Sternchen und Fragezeichen.

Wenn Sie einen umgekehrten Schrägstrich (\) verwenden, können Sie damit angeben, dass Sie mit dem Sternchen nicht einen sehr allgemeinen Suchbegriff verwenden, sondern ganz konkret nach einer Datei suchen, in deren Bezeichnung ein Sternchen vorkommt.

Wenn die Datei den Namen sneak*.txt trägt, geben Sie folgenden Befehl ein:

sneak\*.txt

Im Folgenden erhalten Sie einen kurzen Überblick über Platzhalter und reguläre Ausdrücke: