Heim  >  Artikel  >  php教程  >  Detaillierte Erklärung von grep

Detaillierte Erklärung von grep

高洛峰
高洛峰Original
2016-12-13 15:08:451315Durchsuche

OK, nachdem ich reguläre Ausdrücke, sed, awk und die drei Text-Musketiere gelernt habe, bleibt nur noch grep übrig. Nehmen wir es zusammen

Schauen wir uns zuerst an, was grep ist

Baidu es

Englisch: Global Search Regular Expression (RE) und drucken Sie die Zeile aus

Chinesisch: Umfassende Suche nach regulären Ausdrücken und Ausdrucken der Zeilen

grep ist ein leistungsstarkes Textsuchwerkzeug, das reguläre Ausdrücke verwenden kann, um Text zu durchsuchen und die passenden Zeilen auszudrucken.

Zur grep-Familie gehören grep, egrep und fgrep

Prinzip

Erzählen Sie mir etwas über das Prinzip von grep?

Bei einer Dateiliste oder Standardeingabe durchsucht grep den Text nach einer Übereinstimmung mit einem oder mehreren Ausdrücken und gibt nur Zeilen aus, die mit

übereinstimmen (oder nicht übereinstimmen) oder Text

Um es ganz klar auszudrücken: Der Prozess von grep unterscheidet sich nicht wesentlich vom Adressierungsprozess von sed.

Bezogen auf den SED-Verarbeitungsprozess fassen wir den Grep-Verarbeitungsprozess zusammen

Lesen Sie eine Textzeile in den Musterraum

Suchen Sie die Textzeile entsprechend die angegebene Regelmäßigkeit, Überprüfen Sie, ob übereinstimmender Inhalt vorhanden ist

Wenn in der gesamten Zeile keine Übereinstimmung vorliegt, wird die Zeile nicht weiter verarbeitet. Löschen Sie die Zeile und lesen Sie die nächste Zeile

Wenn die Übereinstimmung erfolgreich ist, drucken Sie die Zeile aus und lesen Sie die nächste Zeile.

Es scheint, dass grep tatsächlich eine vereinfachte Version von sed ist. Erfolgreich übereinstimmende Zeilen werden automatisch gedruckt. Allerdings muss sed zum Drucken den p-Befehl angeben, andernfalls wird der gesamte Text gedruckt. Natürlich bietet die Option von grep viele Parameter und auch viele Funktionen, die sed nicht hat.

Okay, jetzt, da dies der Fall ist, sind in grep nur noch zwei Inhalte übrig, eines sind die Parameter von grep und das andere ist die reguläre Adressierung

Apropos reguläre Ausdrücke werden in grep verwendet. Es unterscheidet sich ein wenig von sed und awk. In sed oder awk sollte // eingekreist werden. In grep,


Syntaxformat

grep [Option] Muster [Datei...]

grep [Optionen] [-e Muster] -f []

grep -E entspricht egrep, grep -F entspricht fgrep, grep -r entspricht rgrep

Werfen wir einen Blick auf grep [Optionen]-Leiste

Bei der Einführung von [Optionen] geben wir einige kleine Beispiele, um die Verwendung von Metazeichen und grep, egrep und fgrep zu üben.

Der Autor verwendet Farben für Parameter, von denen er glaubt, dass sie häufig verwendet werden, und die Markierungen sind dieselben

grep -V Sie können die Version von grep sehen

Testtext

John Daggett, 341 King Road, Plymouth MA
Alice Ford, 22 East Broadway, Richmond VA
Orville Thomas, 11345 Oak Bridge Road, Tulsa OK
Terry Kalkas, 402 Lans Road, Beaver Falls PA
Eric Adams, 20 Post Road, Sudbury MA
Hubert Sims, 328A Brook Road, Roanoke VA
Amy Wilde, 334 Bayshore Pkwy, Mountain CA anzeigen
Sal Carpenter, 73 6th Street, Boston MA
ansible ist ansible
saltstcak ist leistungsfähiger als (ansible),hehe
ansibl sind ansible

Matcher-Auswahl

Detaillierte Erklärung von grep

Spielkontrolle

Detaillierte Erklärung von grep

Ausgabekontrolle

Detaillierte Erklärung von grep

Ausgabe Zeilenpräfix-Steuerelemente

Detaillierte Erklärung von grep

Inhaltskontrolle

Detaillierte Erklärung von grep

Datei- und Verzeichnisoptionen

Detaillierte Erklärung von grep

Andere Optionen

Detaillierte Erklärung von grep

Exit-Status

Wenn die Übereinstimmung erfolgreich ist, ist der Exit-Statuscode 0, wenn die Übereinstimmung fehlschlägt, der Exit-Status Code ist 1, wenn bei der Übereinstimmung ein Fehler vorliegt, ist der Exit-Code 2


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn