sed und
awk gehören zu den mächtigsten Textwerkzeugen unter Linux.
Beide arbeiten zeilenweise – aber mit unterschiedlichem Fokus.
In diesem Bonuskapitel klären wir:
- Was macht
sed?
- Was macht
awk?
- Wann sollte man welches Werkzeug einsetzen?
- Wie ergänzen sie sich?
🔹 Was ist sed?
sed steht für Stream Editor.
Eigenschaften:
- arbeitet zeilenweise
- spezialisiert auf Suchen und Ersetzen
- kann Zeilen löschen, einfügen oder ersetzen
- ideal für schnelle Texttransformationen
- perfekt für Automatisierung in Shell-Skripten
Typische Beispiele:
sed 's/foo/bar/g' datei.txt
sed '/^#/d' config.txt
👉
sed ist ein sehr schneller Text-Filter für einfache bis mittlere Transformationen.
🔹 Was ist awk?
awk ist ein Muster- und Feldverarbeitungswerkzeug.
Eigenschaften:
- arbeitet zeilen- und spaltenbasiert
- erkennt automatisch Felder (Spalten)
- ideal für Filtern, Berechnen, Aggregieren
- besitzt Variablen, Bedingungen und Schleifen
Typische Beispiele:
awk '{print $1}' daten.txt
awk '$3 > 100' daten.txt
👉
awk ist besonders stark bei strukturierten Daten (CSV, Logs, Tabellen).
🔹 Gemeinsamkeiten
Beide Werkzeuge:
- arbeiten standardmäßig zeilenweise
- nutzen reguläre Ausdrücke
- lassen sich perfekt in Pipes kombinieren
- sind ideal für Automatisierung
- sind auf praktisch jedem Linux-System vorhanden
Beispiel Kombination:
sed '/^#/d' daten.txt | awk '{print $2}'
🔹 Unterschiede im Überblick
sed
- Fokus auf Text-Transformation
- Sehr kompakt für Suchen/Ersetzen
- Weniger logisch orientiert
- Kein natürliches Spaltenkonzept
awk
- Fokus auf Feld- und Datenanalyse
- Sehr stark bei Berechnungen
- Programmiersprache-ähnliche Struktur
- Integriertes Feldkonzept ($1, $2, ...)
🔹 Wann verwendet man was?
Verwende
sed, wenn:
- du Text ersetzen willst
- Zeilen löschen oder einfügen willst
- Konfigurationsdateien anpassen willst
Verwende
awk, wenn:
- du Spalten auswerten willst
- Berechnungen durchführen willst
- Logs analysieren willst
- Berichte erzeugen willst
🔹 Praxis-Denkweise
👉
sed bereitet Daten auf.
👉
awk analysiert sie.
Beispiel:
sed '/^#/d' sales.csv | awk -F';' '{sum += $2} END {print sum}'
sed entfernt Kommentare
awk berechnet die Summe
✅ Zusammenfassung
sed = Text transformieren
awk = Daten auswerten
- Beide ergänzen sich perfekt
- In Kombination sind sie extrem leistungsfähig
Wenn du beide beherrschst, kannst du sehr viele Text- und Datenprobleme direkt in der Shell lösen – ohne zusätzliche Programme.
👉
Im nächsten Bonus-Artikel zeigen wir dir ein praktisches Beispiel:
Textbereinigung mit sed und Datenanalyse mit awk – die perfekte Kombination.
📚 Inhaltsverzeichnis
👉
awk Kapitel 1: Felder & Zeilen verstehen
👉
awk Kapitel 2: Muster & Bedingungen in awk
👉
awk Kapitel 3: Textbearbeitung & Formatierung mit awk
👉
awk Kapitel 4: Berechnungen & Statistiken mit awk
👉
awk Kapitel 5: Eigene awk-Skripte schreiben
👉
awk Kapitel 6: Praxisprojekt – Webserver-Logs analysieren mit awk
⭐ Bonus-Kapitel
👉
awk Bonus 1: Unterschiede & Gemeinsamkeiten von sed und awk
👉
awk Bonus 2: Textbereinigung mit sed, Datenanalyse mit awk
👉
awk Bonus 3: Kombinieren in einer Pipeline – sed & awk zusammen einsetzen
👉
awk Bonus 4: Praxisprojekt - Logdateien filtern, bereinigen und auswerten
👉
awk Bonus 5: Profi-Tricks - Reguläre Ausdrücke für sed & awk im Zusammenspiel