Dateien durchsuchen

Eine Datei nach mehreren Begriffen durchsuchen

grep -E 'reject|error|warning|fatal|panic' /var/log/mail.log

Alternative:

egrep '(reject|error|warning|fatal|panic):' /var/log/mail.log

Suche nach Inhalt, zeige Zeilen davor und danach

grep -i "Suchbegriff" -A 5 -B 5

Zeigt zusätzlich zum Treffer auch die 5 Zeilen davor und danach.

Eine Datei gefiltert ausgeben mit RegEx

Alles ausgeben was einem bestimmten RegEx entspricht:

grep -E -i '^nameserver 172.*' /etc/resolv.conf

Alles ausblenden, was mit # anfängt (“invert-match”):

grep -v "^#" /etc/resolv.conf

Strings auslesen

Den ersten Teil einer Ausgabe extrahieren

sha256sum dateiname | awk '{print $1}'

Alternative mit cut

sha256sum dateiname | cut -d ' ' -f 1

Strings ersetzen

String innerhalb einer Datei ersetzen

sed -i "s/alt/neu/g" datei.txt'

Lösche alle Zeilen in einer Datei, die mit einem Hashtag beginnen

sed -i "/^#/d" datei.txt

Nach Dateien suchen und Inhalt ersetzen

find . -iname '*.yml' | xargs sed -i 's/alt/neu/g'

Zeilen in Datei löschen mit sed

Befehl Beschreibung
Lösche Zeile 2 und 5 sed -i '2d;5d' datei.txt
Lösche Zeile 3-6 sed -i '3,6d' datei.txt
Lösche die letzte Zeile sed -i '$d' datei.txt
Lösche von Zeile 5 bis zum Ende sed -i '5,$d' datei.txt