Bisher hast du gelernt, wie awk Zeilen in Felder zerlegt.
Doch die eigentliche Power von awk zeigt sich, wenn du
Bedingungen einsetzt: Du kannst gezielt nur bestimmte Zeilen aus einer Datei auswählen und bearbeiten.
In diesem Kapitel lernst du, wie du mit Mustern und Bedingungen arbeitest – die Grundlage für alle fortgeschrittenen Anwendungen.
🔹 Muster ohne Bedingungen
awk arbeitet nach dem Prinzip:
MUSTER { AKTION }
- MUSTER bestimmt, für welche Zeilen die Aktion ausgeführt wird.
- AKTION ist das, was mit diesen Zeilen passieren soll.
Beispiel: Nur Zeilen mit „Alice“ anzeigen:
awk '/Alice/ {print $0}' users.txt
Ausgabe:
Alice 25 Berlin
👉 Hier ist
/Alice/ das Muster,
{print $0} die Aktion.
🔹 Bedingungen mit Vergleichsoperatoren
Du kannst auch
Vergleiche auf Felder anwenden.
Beispiel: Nur Nutzer mit Alter größer 25 anzeigen (
$2 > 25):
awk '$2 > 25 {print $1, $2}' users.txt
Ausgabe:
Bob 30
Weitere Vergleichsoperatoren:
== → gleich
!= → ungleich
<, >, <=, >= → kleiner/größer
🔹 Bedingungen mit Zeichenketten
Du kannst auch Strings vergleichen.
Beispiel: Alle Nutzer aus "Berlin" anzeigen:
awk '$3 == "Berlin" {print $1, $3}' users.txt
Ausgabe:
Alice Berlin
👉 Mit Stringvergleichen kannst du gezielt nach Städten, Namen oder Schlüsselwörtern filtern.
🔹 Muster & Bedingungen kombinieren
Du kannst Muster (Regex) und Bedingungen kombinieren.
Beispiel: Nutzer, deren Name ein „B“ enthält und die älter als 25 sind:
awk '$1 ~ /B/ && $2 > 25 {print $1, $2}' users.txt
Ausgabe:
Bob 30
👉 awk unterstützt logische Operatoren:
&&; → UND
|| → ODER
! → NICHT
🔹 Muster ohne Aktion
Wenn du keine Aktion angibst, gibt awk standardmäßig die ganze Zeile aus.
Beispiel: Alle Zeilen mit „Charlie“ anzeigen:
awk '/Charlie/' users.txt
Ausgabe:
Charlie 22 Köln
👉 Das ist praktisch für schnelle Filter.
🔹 Übung
✅ Zusammenfassung
- awk arbeitet nach dem Prinzip:
MUSTER { AKTION }.
- Mit Mustern (
/Text/) kannst du Zeilen nach Inhalt filtern.
- Mit Bedingungen (
$2 > 25) kannst du numerische oder textuelle Vergleiche durchführen.
- Du kannst Bedingungen kombinieren mit
&&, ||, !.
- Ohne Aktion gibt awk standardmäßig die ganze Zeile aus.
👉
Im nächsten Kapitel lernst du, wie du mit awk
Texte formatierst und Ausgaben schöner gestaltest.
📚 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