grep ist eines der wichtigsten Werkzeuge unter Linux. Mit grep kannst du:
  • Text in Dateien durchsuchen
  • bestimmte Zeilen filtern
  • Muster (Patterns) erkennen
  • Logs analysieren
  • Daten schnell selektieren
👉 grep ist ein Filter: Es gibt nur die Zeilen aus, die zu deinem Suchmuster passen.

🔹 Kompatibilität

Getestet mit GNU grep 3.x unter Ubuntu 22.04 und neuer. Alle Befehle in diesem Kapitel funktionieren unter: Ubuntu 22.04 Ubuntu 24.04

🔹 Erste Suche mit grep

Erstelle eine Testdatei:
cat > beispiel.txt <<'EOF'
Alice
Bob
Charlie
Bobette
EOF
Einfache Suche Ausgabe:
Bob
Bobette
👉 grep sucht standardmäßig nach Teilstrings. „Bobette“ enthält „Bob“ – deshalb wird die Zeile ebenfalls ausgegeben.

🔹 Groß- und Kleinschreibung ignorieren

Standardmäßig ist grep case-sensitive.
grep alice beispiel.txt
Keine Ausgabe. Mit -i:
grep -i alice beispiel.txt
Ausgabe:
Alice

🔹 Zeilennummern anzeigen

Mit -n:
grep -n Bob beispiel.txt
Ausgabe:
2:Bob
4:Bobette
👉 Sehr hilfreich bei Log-Analysen.

🔹 Nur exakte Treffer

Wenn du nur „Bob“ willst – nicht „Bobette“:
grep -w Bob beispiel.txt
Ausgabe:
Bob
👉 -w sucht nur nach vollständigen Wörtern.

🔹 Treffer zählen

Mit -c:
grep -c Bob beispiel.txt
Ausgabe:
2

🔹 Nicht passende Zeilen anzeigen

Mit -v:
grep -v Bob beispiel.txt
Ausgabe:
Alice
Charlie
👉 -v kehrt die Suche um.

🔹 Mehrere Dateien durchsuchen

Erstelle eine zweite Datei:
cat > zweite.txt <<'EOF'
Server läuft
Bob ist online
Fehler gefunden
EOF
Suche in beiden Dateien:
grep Bob beispiel.txt zweite.txt
Ausgabe:
beispiel.txt:Bob
beispiel.txt:Bobette
zweite.txt:Bob ist online
👉 grep zeigt automatisch den Dateinamen an.

⚠️ Typischer Fehler

grep bob beispiel.txt
Keine Ausgabe. Warum? 👉 grep unterscheidet Groß- und Kleinschreibung. Lösung: -i ✅ Übung Aufgabe 1 Suche in beispiel.txt nur nach „Charlie“. Aufgabe 2 Zähle, wie oft „Bob“ vorkommt – ohne die Zeilen auszugeben. Aufgabe 3 Gib nur die Zeilen aus, die nicht „Alice“ enthalten.

🧾 Zusammenfassung (Kapitel 1)

In diesem Kapitel hast du gelernt:
  • wie grep einfache Suchmuster verarbeitet
  • wie man Groß-/Kleinschreibung ignoriert (-i)
  • wie man Zeilennummern anzeigt (-n)
  • wie man Treffer zählt (-c)
  • wie man exakte Wörter sucht (-w)
  • wie man Treffer invertiert (-v)
👉 grep filtert Zeilen – mehr nicht. Aber genau das macht es extrem leistungsfähig.

👉 Im nächsten Kapitel

  • Im nächsten Kapitel schauen wir uns an, wie grep mit regulären Ausdrücken arbeitet:
  • ^ und $
  • Zeichenklassen
  • . und *
  • Unterschiede zwischen normaler und erweiterter Suche (-E)
Damit beginnt der eigentliche Deep Dive.