Obwohl der Linux-Befehl find eine hervorragende Arbeit für die Suche in der Befehlszeile leistet, kann es Situationen geben, in denen ein spezielles Tool praktischer ist. Ein solcher Fall besteht darin, Zeilen in einer Datei zu finden, die mit einem bestimmten Wort beginnen. Es gibt einen Befehl namens look - das erledigt das für Sie.
In diesem Tutorial werden wir diesen Befehl anhand einiger leicht verständlicher Beispiele besprechen. Aber bevor wir das tun, ist es erwähnenswert, dass alle Beispiele in diesem Artikel auf einem Ubuntu 18.04 LTS-Rechner getestet wurden.
Linux-Look-Befehl
Der Look-Befehl in Linux zeigt Zeilen an, die mit einer bestimmten Zeichenfolge beginnen. Es folgt die Syntax:
look [-bdf] [-t termchar] string [file ...]
Und hier ist, was die Manpage über das Tool sagt:
The look utility displays any lines in file which contain string as a
prefix.
If file is not specified, the file /usr/share/dict/words is used, only
alphanumeric characters are compared and the case of alphabetic charac?
ters is ignored.
Im Folgenden finden Sie einige Beispiele im Q&A-Stil, die Ihnen eine gute Vorstellung davon vermitteln sollen, wie der Look-Befehl funktioniert.
Q1. Wie verwende ich den Look-Befehl?
Geben Sie einfach das Wort, das Sie suchen möchten, und die Datei, in der Sie suchen möchten, als Eingaben für den Look-Befehl an.
Hier ist ein Beispiel:
look The test.txt
Der obige Befehl sucht in der Datei „test.txt“ nach Zeilen, die mit „The“ beginnen.
Als Referenz ist hier die Datei test.txt:
Und hier ist die erzeugte Ausgabe:
Q2. Wie kann die Suche innerhalb einer bestimmten Zeichenfolge eingegrenzt werden?
Mit dem Look-Befehl können Sie Ihre Suche auch eingrenzen, indem Sie ein abschließendes Zeichen eingeben. So erklärt die Manpage die Option -t:
-t, --terminate termchar
Specify a string termination character, i.e., only the characters
in string up to and including the first occurrence of termchar
are compared.
Um diese Option zu testen, habe ich test.txt mit ein paar weiteren Zeilen aktualisiert. Schau mal:
Und dann den folgenden Befehl ausgeführt:
look -t n Fund test.txt
Also bitten wir look im Grunde darum, nach Zeilen zu suchen, die mit dem Wort „Fund“ beginnen, aber auch diejenigen einzubeziehen, die mit „Fun“ beginnen. Und hier ist die Ausgabe:
Q3. Wird bei der Look-Suche zwischen Groß- und Kleinschreibung unterschieden?
Ja ist es. Wenn Sie zum Beispiel den folgenden Befehl ausführen (der derselbe ist wie der, den wir in den letzten Fragen und Antworten verwendet haben, außer der Kleinschreibung des ersten Zeichens im Wort „Fonds“):
look -t n fund test.txt
Es wird keine Ausgabe erzeugt.
Sie können jedoch mit der Option -f zwingen, Groß- und Kleinschreibung zu ignorieren.
Q4. Wofür kann ein anderer Look verwendet werden?
Sie können den Look-Befehl verwenden, um nach allen Wörtern zu suchen, die mit einer Reihe von Zeichen beginnen. Um beispielsweise zu sehen, was alle Wörter mit der Zeichenfolge „Liebe“ beginnen, verwenden Sie einfach den Look-Befehl auf folgende Weise:
look love
Hier ist eine Beispielausgabe:
Schlussfolgerung
Alles in allem ist Look ein nützliches kleines Befehlszeilenprogramm, das Sie zumindest kennen sollten, denn Sie wissen nie, wann es sich als Retter für Sie herausstellen könnte. Es bietet nicht viele Befehlszeilenoptionen, und die meisten haben wir hier bereits besprochen. Um mehr über Look zu erfahren, besuchen Sie die Manpage.