Übersicht
egrep wird verwendet, um Zeilen zu finden, die ein bestimmtes Muster in Textdateien enthalten. Im Gegensatz zu normalem grep unterstützt egrep standardmäßig erweiterte reguläre Ausdrücke (ERE), was eine flexiblere und leistungsfähigere Mustererkennung ermöglicht.
Hauptmerkmale
- Standardunterstützung für erweiterte reguläre Ausdrücke (ERE)
- Funktionell identisch mit
grep -E - Steuerung von Suche und Ausgabe durch verschiedene Optionen
- Verwendung mit Pipe (|), um die Ausgabe anderer Befehle zu filtern
Wichtige Optionen
Dies sind die wichtigsten Optionen, die häufig mit dem egrep-Befehl verwendet werden.
Suchsteuerung
Ausgabeformat
Erzeugter Befehl:
Kombinieren Sie die Befehle.
Beschreibung:
`egrep` Führen Sie den Befehl aus.
Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.
Anwendungsbeispiele
Dies sind verschiedene Anwendungsbeispiele für den egrep-Befehl.
Suche mit grundlegenden erweiterten regulären Ausdrücken
egrep 'apple|banana' fruits.txt
Sucht nach Zeilen, die 'apple' oder 'banana' in der Datei enthalten.
Suche unter Ignorierung von Groß-/Kleinschreibung
egrep -i 'error' logfile.log
Sucht in der Protokolldatei nach Zeilen, die 'error' (unabhängig von Groß-/Kleinschreibung) enthalten.
Ausgabe von Zeilen, die nicht mit '#' beginnen
egrep -v '^#' config.ini
Zeigt nur die tatsächlichen Konfigurationseinstellungen an, indem auskommentierte Zeilen in der Konfigurationsdatei ausgeschlossen werden.
Rekursive Suche in einem bestimmten Verzeichnis
egrep -r 'function_name' ./src
Sucht nach 'function_name' in allen Dateien im Unterverzeichnis 'src' des aktuellen Verzeichnisses.
Suche mit Zeilennummern
egrep -n 'keyword' document.txt
Sucht nach 'keyword' in einer Dokumentdatei und gibt die Zeilennummern der übereinstimmenden Zeilen aus.
Suche nach bestimmten Prozessen in der Prozessliste
ps aux | egrep 'apache|nginx'
Filtert und zeigt Prozesse an, die mit 'apache' oder 'nginx' in der Ausgabe von `ps aux` zusammenhängen.
Tipps & Hinweise
Nützliche Tipps und zu beachtende Punkte bei der Verwendung von egrep.
Beziehung zu grep -E
Auf den meisten modernen Linux-Systemen ist egrep ein symbolischer Link oder Alias für grep -E. Daher ist die Verwendung von grep -E üblicher und wird empfohlen.
egrep==grep -E- Für komplexe reguläre Ausdrücke ist
egrepodergrep -Epraktischer als das normalegrep
Leistungsüberlegungen
Für die Suche nach festen Zeichenketten (nicht regulären Ausdrücken) kann die Verwendung von fgrep (oder grep -F) aus Leistungssicht vorteilhafter sein, da fgrep keinen Overhead für die Analyse regulärer Ausdrücke hat.
- Suche nach festen Zeichenketten: Verwenden Sie
fgrep(odergrep -F) - Suche nach regulären Ausdrücken: Verwenden Sie
egrep(odergrep -E)
Escape von regulären Ausdrücken
Während beim normalen grep Metazeichen für erweiterte reguläre Ausdrücke wie +, ?, |, () mit einem Backslash (\) escaped werden müssen, können sie bei egrep direkt ohne Escape-Zeichen verwendet werden.
- Bei
egrepdirekt verwenden wie(a|b)+ - Beim normalen
grepist ein Escape wie\(a\|b\)\+erforderlich