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
1. Einführung in das Geschäftsszenario Angenommen...
Für einzelne Webmaster war es schon immer das Ziel...
Vorwort Ingenieure, die im Linux-Umfeld arbeiten,...
Im vorherigen Artikel https://www.jb51.net/articl...
Stellen Sie Tomcat so ein, dass der Dienst automa...
Wenn der Schlüssel nicht zum v-for-Tag hinzugefüg...
führen Einige gängige Dreiecke auf Webseiten könn...
In diesem Artikel wird der spezifische Code von N...
Vorwort Es ist sehr einfach, einen Server in node...
Heute habe ich eine Frage zur Konfiguration einer...
Was ist ein Port? Bei den Ports, auf die wir uns ...
Verwenden Sie Nginx, um einen Tomcat9-Cluster zu ...
Einführung in Docker Docker ist eine Open-Source-...
Detaillierte Erklärung zum Ersetzen in ein Beispi...
Wirkung: CSS-Stil: <style type="text/css&...