Grep mit mehreren Strings

Fr, 21. April 2023, Lioh Möller

Möchte man mithilfe von grep nach mehreren Wörtern suchen, können diese verkettet werden.



Im Folgenden wird die nginx-Webserver Logdatei auf Fehler überprüft:

grep 'fatal\|error\|critical' /var/log/nginx/error.log

Die Verkettung erfolgt mithilfe des | Zeichens, welches mithilfe von \ escaped werden muss, da grep ohne weitere Angaben nur einfache Reguläre Ausdrücke unterstützt.

Alternativ kann man grep mit dem Parameter -E starten, um Reguläre Ausdrücke vollwertig zu interpretieren:

grep -E 'fatal|error|critical' /var/log/nginx/error.log

Wie üblich kann man Zeichenketten beim Aufruf von grep auch negieren. Dazu eignet sich der Parameter -v.

grep -E -v 'fatal|error|critical' /var/log/nginx/error.log

In obigen Beispiel würden alle Nachrichten bis auf Fehlermeldungen ausgegeben.

Tags

Grep, RegExp