Kurzbefehl für buntes egrep einrichten:
alias g='grep -E --color=auto'
g home /etc/passwd
Diese Übersicht ist nicht vollständig. Vollständige Übersichten gibt es z.B. hier:
man grep
| ^ | Zeilenanfang | 
| $ | Zeilenende | 
Alle Nutzer mit bash als Shell:
grep -E --color 'bash$' /etc/passwd
| . | ein beliebiges Zeichen | 
| [aeiou] | Eines der Zeichen a, e, i, o oder u | 
| [a-z] | Ein ASCII-Kleinbuchstabe | 
| [0-9A-Fa-f] | Ein Hexadezimalziffer | 
| [^aeiou] | Ein Zeichen, aber nicht a, e, i, o oder u | 
| [^0-9A-Fa-f] | keine Hexadezimalziffer | 
| {n,m} | mindestens n-Mal, maximal m-Mal | 
| {n} | genau n-Mal | 
| ? | 0 oder 1 mal, entspricht: {0,1} | 
| * | 0 oder mehr mal, entspricht: {0,} | 
| + | 1 oder mehr mal, entspricht: {1,} | 
Alle Nutzernamen:
grep -E --color -o '^[^:]+' /etc/passwd
| (…) | Bereich der kopiert werden soll | 
| \1 | Kopie einfügen | 
Alle Nutzer deren Name nicht im Namen ihres Heimatverzeichnises enthalten ist:
grep -vE '^([^:]+):x:[0-9]+:[0-9]+:[^:]*:[^:]*\1' /etc/passwd
Suchen und ersetzen mit sed in 3 Schritten:
Anzeigen, was geändert würde:
sed -rn 's/bash$/fish/p' /etc/passwd
Komplette Datei inkl. Änderungen anzeigen:
sed -r 's/bash$/fish/' /etc/passwd
Datei tatsächlich ändern:
cp /etc/passwd . sed -ir 's/bash$/fish/' passwd
sed -e '3d' namen sed -e '3,5d' namen sed -e '/Johann/d' namen
Einführung in Reguläre Ausdrücke:
Tutorials und Referenz:
Hier gibt es ein nettes Tool um regular expressions zu bauen und zu testen:
Hier ein Tutorial von Heiko Baur:
Editor für Reguläre Ausdrücke:
RegEx Kreuzworträtsel