In diesem Artikel wird erläutert, wie Sie mit der Verwendung von grep
beginnen Befehl unter Linux®.
Was ist grep
?
Sie verwenden das grep
Befehl innerhalb eines Linux- oder Unix-basierten Systems, um Textsuchen nach einem definierten Kriterium von Wörtern oder Zeichenfolgen durchzuführen. grep
steht für G global nach einem R suchen zB E xpression und P ausdrucken.
grep
Syntax
Das folgende Beispiel zeigt die grundlegende Befehlsstruktur:
grep 'string' filename(s)
Dieser Befehl sucht nach Textzeilen, die die angegebene Zeichenfolge enthalten, und gibt sie zurück in Dateiname(n) .
Optionen:
Sie können jede der folgenden Optionen einzeln oder in Kombination hinzufügen, um Ihre Suche zu verfeinern:
- -i :Druckt Zeilen mit übereinstimmenden Kriterien, wobei Groß-/Kleinschreibung ignoriert wird.
- -l :Druckt nur Dateinamen.
- -n :Druckt Zeilen mit übereinstimmenden Kriterien und Zeilennummern.
- -c :Gibt die Anzahl der Zeilen mit übereinstimmenden Kriterien aus.
- -v :Druckt Zeilen, die den Kriterien nicht entsprechen (inverse Suche).
- -w :Gibt Übereinstimmungen mit ganzen Wörtern aus.
- -A n :Druckt n Linien nach Spielen.
- -B n :Druckt n Zeilen vor Übereinstimmungen.
- -C n :Druckt n Zeilen vor und nach Spielen.
Beispiel für grep
Befehle mit Ausgabe
Beispiel:Datei „example.txt“ enthält die folgenden 5 Zeilen:
hello world
Hello World
Hello Worlds
Hello Moon
321 Goodnight
Einfacher Befehl:Finde und drucke eine exakte Übereinstimmung für „Welt“
[root@test ~]# grep world example.txt
hello world
Verwenden Sie „-i“, um die Groß-/Kleinschreibung zu ignorieren
[root@test ~]# grep -i world example.txt
hello world
Hello World
Hello Worlds
Verwenden Sie „-n“, um Übereinstimmungen zu finden und auszugeben, und geben Sie Zeilennummern ein.
[root@test ~]# grep -n Hello example.txt
2:Hello World
3:Hello Worlds
4:Hello Moon
Verwenden Sie „-c“, um die Anzahl der Zeilenübereinstimmungen zu finden und auszugeben.
[root@test ~]# grep -c hello example.txt
1
Verwenden Sie eine Kombination aus „-c“ und „-i“, um die Suche zu verfeinern.
[root@test ~]# grep -ci hello example.txt
4
Verwenden Sie „-v“, um alle inversen (nicht übereinstimmenden) Zeilen zu finden und zu drucken.
[root@test ~]# grep -v world example.txt
Hello World
Hello Worlds
Hello Moon
321 Goodnight
Verwenden Sie eine Kombination aus „-v“ und „-i“, um die Suche zu verfeinern.
[root@test ~]# grep -vi world example.txt
Hello Moon
321 Goodnight
Verwenden Sie „-w“, um Übereinstimmungen mit ganzen Wörtern zu finden und auszugeben.
[root@test ~]# grep -w World example.txt
Hello World
Verwenden Sie "-A n", um die Übereinstimmungen zusammen mit "n" Zeilen nach der Übereinstimmung zu finden und auszugeben.
[root@test ~]# grep -A 2 Worlds example.txt
Hello Worlds
Hello Moon
321 Goodnight
Verwenden Sie „-B n“, um die Übereinstimmungen zusammen mit „n“ Zeilen vor der Übereinstimmung zu finden und auszugeben.
[root@test ~]# grep -B 2 Goodnight example.txt
Hello Worlds
Hello Moon
321 Goodnight
Verwenden Sie „CA n“, um die Übereinstimmung zusammen mit „n“ Zeilen vor und nach der Übereinstimmung zu finden und auszudrucken.
[root@test ~]# grep -C 2 Worlds example.txt
hello world
Hello World
Hello Worlds
Hello Moon
321 Goodnight