1. Offizielle Einführung grep ist ein häufig verwendeter Befehl in Linux. Es ist ein Unix-Tool, mit dem sich wiederholende Suchaufgaben für Dateien und Text ausgeführt werden. Mit dem Befehl grep können Sie bestimmte Suchbedingungen angeben, um Dateien und deren Inhalte zu durchsuchen und nützliche Informationen zu erhalten. Verwendung: grep [OPTION] ... MUSTER [DATEI] ... Suchen Sie in jeder DATEI oder Standardeingabe nach MUSTER. PATTERN ist standardmäßig ein grundlegender regulärer Ausdruck (BRE). Beispiel: grep -i 'hello world' menu.h main.c Regexp-Auswahl und -Interpretation: -E, --extended-regexp PATTERN ist ein erweiterter regulärer Ausdruck (ERE) -F, --fixed-strings PATTERN ist eine Reihe von durch Zeilenumbrüche getrennten festen Zeichenfolgen -G, --basic-regexp PATTERN ist ein einfacher regulärer Ausdruck (BRE) -P, --perl-regexp PATTERN ist ein regulärer Perl-Ausdruck -e, --regexp=MUSTER MUSTER zum Abgleichen verwenden -f, --file=DATEI MUSTER aus DATEI abrufen -i, --ignore-case Groß-/Kleinschreibung ignorieren -w, --word-regexp erzwingt, dass MUSTER nur mit ganzen Wörtern übereinstimmt -x, --line-regexp erzwingt, dass MUSTER nur mit ganzen Zeilen übereinstimmt -z, --null-data eine Datenzeile endet mit 0 Byte, nicht mit einem Zeilenumbruch Verschiedenes: -s, --no-messages unterdrückt Fehlermeldungen -v, --invert-match wählt nicht übereinstimmende Zeilen aus -V, --version zeigt Versionsinformationen an und beendet das Programm --help zeigt diesen Hilfetext an und beendet das Programm Ausgabesteuerung: -m, --max-count=NUM Stopp nach NUM Übereinstimmungen -b, --byte-offset gibt den Byte-Offset mit den Ausgabezeilen aus -n, --line-number Zeilennummer mit Ausgabezeilen drucken --line-buffered Ausgabe in jeder Zeile leeren -H, --with-filename gibt den Dateinamen für jede Übereinstimmung aus -h, --no-filename unterdrückt das Dateinamenpräfix bei der Ausgabe --label=LABEL verwendet LABEL als Standardpräfix für Eingabedateinamen -o, --only-matching zeigt nur den Teil einer Zeile an, der mit PATTERN übereinstimmt -q, --quiet, --silent unterdrückt die gesamte normale Ausgabe --binary-files=TYPE nimmt an, dass Binärdateien vom Typ sind; TYP ist „binär“, „Text“ oder „ohne Übereinstimmung“. -a, --text, entspricht --binary-files=text -I entspricht --binary-files=without-match -d, --directories=ACTION wie mit Verzeichnissen umgegangen wird; AKTION ist „Lesen“, „Rekursiv“ oder „Überspringen“ -D, --devices=ACTION wie mit Geräten, FIFOs und Sockets umgegangen wird; AKTION ist „Lesen“ oder „Überspringen“ -r, --recursive wie --directories=recurse -R, --dereference-recursive ebenso, aber folge allen Symlinks --include=DATEIMUSTER Suche nur nach Dateien, die mit FILE_PATTERN übereinstimmen --exclude=DATEIMUSTER Überspringen Sie Dateien und Verzeichnisse, die mit FILE_PATTERN übereinstimmen --exclude-from=DATEI - Dateien überspringen, die einem beliebigen Dateimuster aus DATEI entsprechen --exclude-dir=PATTERN: Verzeichnisse, die mit PATTERN übereinstimmen, werden übersprungen. -L, --files-without-match druckt nur Namen von Dateien, die keine Übereinstimmung enthalten -l, --files-with-matches druckt nur Namen von DATEIEN, die Übereinstimmungen enthalten -c, --count gibt nur die Anzahl der übereinstimmenden Zeilen pro DATEI aus -T, --initial-tab Tabs ausrichten (falls nötig) -Z, --null druckt 0 Bytes nach dem Dateinamen Kontextsteuerung: -B, --before-context=NUM druckt NUM Zeilen des führenden Kontexts -A, --after-context=NUM druckt NUM Zeilen des nachfolgenden Kontexts -C, --context=NUM druckt NUM Zeilen des Ausgabekontexts -NUM dasselbe wie --context=NUM --group-separator=SEP SEP als Gruppentrennzeichen verwenden --no-group-separator leere Zeichenfolge als Gruppentrennzeichen verwenden --color[=WANN], --colour[=WHEN] verwendet Markierungen, um die passenden Zeichenfolgen hervorzuheben; WANN ist „immer“, „nie“ oder „automatisch“ -U, --binary entfernt keine CR-Zeichen bei EOL (MSDOS/Windows) -u, --unix-byte-offsets Offsets melden, als ob keine CRs vorhanden wären (MSDOS/Windows) „egrep“ bedeutet „grep -E“. „fgrep“ bedeutet „grep -F“. Der direkte Aufruf als „egrep“ oder „fgrep“ ist veraltet. Wenn DATEI - ist, wird die Standardeingabe gelesen. Ohne DATEI wird . gelesen, wenn eine Kommandozeile -r ist angegeben, andernfalls -. Wenn weniger als zwei DATEIEN angegeben sind, wird -h angenommen. Der Beendigungsstatus ist 0, wenn eine beliebige Zeile ausgewählt ist, andernfalls 1. Wenn ein Fehler auftritt und -q nicht angegeben ist, lautet der Beendigungsstatus 2. Fehler melden an: [email protected] GNU Grep-Homepage: <http://www.gnu.org/software/grep/> Allgemeine Hilfe zur Verwendung von GNU-Software: http://www.gnu.org/gethelp/ Normalerweise prüfe ich Benutzerdaten nur zum einfachen Korrekturlesen von Daten. Vor kurzem erhielt ich plötzlich eine Anfrage zur Analyse der Hintergrundprotokolle und stellte fest, dass grep ziemlich nützlich ist. Beispielsweise ist unser Hintergrundprotokoll ziemlich groß. Wenn wir es direkt vom Server abrufen, dauert es lange und belegt Bandbreite. Die Lösung besteht also darin, es direkt mit dem Schlüsselwort grep in eine neue Datei umzuleiten, von 14 G direkt auf 12 M, und dann die Daten zu bereinigen und zu analysieren. 2. Praktische Einführung 2.1 Verwenden Sie den Befehl grep, um mehrere Texte in mehreren Dateien abzufragen Hinweis: Verwenden Sie den Befehl egrep, um erweiterte reguläre Ausdrücke zu verwenden 1. Mehrere Dateien
2. Mehrere Texte, die Beziehung ist ODER
Folgendes extrahiert beispielsweise die Schlüsselwörter WortA oder WortB in der Datei: grep 'WortA\|WortB' *.py grep -E 'WortA|WortB' *.doc grep -e WortA -e WortB *.py egrep "WortA|WortB" *.c 3. Mehrtextbeziehung ist UND Ich sehe hier keine direkt verwendbare [Option], daher kann ich nur ein Pipe-Symbol | hinzufügen. Zum Beispiel: grep -e Muster1 *.py |grep -e Muster2 2.2 Genaue Übereinstimmung mit dem Schlüsselwort -w grep -w 'Warnung\|Fehler\|kritisch' /home/logs 2.3 Verwenden Sie den Parameter -i, um die Groß-/Kleinschreibung zu ignorieren, und --color, um passende Ergebnisse hervorzuheben egrep -wi --color 'Warnung|Fehler|kritisch' /home/logs 2.4 Rekursive Suche egrep -Rwi --color 'Warnung|Fehler' /home/logs/ Dies ist das Ende dieses Artikels über die detaillierte Verwendung des häufig verwendeten Linux-Befehls - grep-Befehl. Weitere relevante Inhalte zur detaillierten Erklärung des grep-Befehls in Linux finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die verwandten Artikel weiter unten. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Was sind die Unterschiede zwischen SQL und MySQL
>>: Vue-Electron-Problemlösung bei Verwendung des seriellen Ports
Fehlermeldung: FEHLER 2002 (HY000): Verbindung zu...
Hintergrund: Ich frage mich, ob Ihnen aufgefallen...
Allgemeine Lade-/Schreibmethoden Optionen manuell...
Vorwort Dieser Artikel enthält eine Anleitung zum...
1. Suchen Sie zunächst die Datendatei auf dem Mig...
MySQL-Partitionierung ist hilfreich bei der Verwa...
Schwarm drei virtuelle Maschinen 132,133,134 1. I...
Der Wachstumspfad vom Linux-Neuling zum Linux-Mei...
Inhaltsverzeichnis 1. Was ist nginx? 2. Was kann ...
Drei Tabellen sind miteinander verbunden. Feld a ...
Inhaltsverzeichnis Die Reihenfolge, in der MySQL ...
Einführung Um Datenverlust in einer Produktionsum...
Problemerklärung: Wenn Sie die CSS-Eigenschaft „a...
1. MHA Durch die Überwachung des Masterknotens ka...
veranschaulichen Dieser Artikel wurde am 20.05.20...