Linux - Mit Strings arbeiten
Inhaltsverzeichnis:
Dateien durchsuchen
Eine Datei nach mehreren Begriffen durchsuchen
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 '/^#/g' /etc/apt/sources.list
Nach Dateien suchen und Inhalt ersetzen
find . -iname '*.yml' | xargs sed -i 's/alt/neu/g'