awk Befehlsgenerator
awk-Befehle zum Musterscannen und Textverarbeiten erstellen
Erste Schritte mit awk
## Was ist awk?
`awk` ist eine Programmiersprache zur Textverarbeitung. Sie durchsucht die Eingabe zeilenweise, zerlegt jede Zeile in Felder und führt ein Programm aus `pattern { action }`-Regeln darauf aus. Sie eignet sich hervorragend für Spalten-Extraktion, tabellarische Berichte und arithmetische Operationen pro Zeile.
## Verwendung
1. **Programm eingeben**: Geben Sie ein `awk`-Programm wie `{print $1}` an. 2. **Feldtrennzeichen festlegen** (optional): `-F ','` für CSV-Eingabe. 3. **Datei angeben**: Geben Sie die zu verarbeitende Datei ein. 4. **Kopieren & Ausführen**: Kopieren Sie den erstellten Befehl in Ihr Terminal.
Programm-Syntax
Ein `awk`-Programm ist eine Folge von Regeln:
``` pattern { action } pattern { action } ```
### Eingebaute Variablen - `$0` — die gesamte aktuelle Zeile - `$1`, `$2`, … — das 1., 2., … Feld (zerlegt durch `FS`) - `NF` — Anzahl der Felder in der aktuellen Zeile - `NR` — aktuelle Zeilennummer (über die gesamte Datei) - `FS` — Feldtrennzeichen (Standard: Whitespace; festgelegt über `-F`)
### Spezielle Muster - `BEGIN { … }` — wird einmal ausgeführt, bevor eine Eingabe gelesen wird (gut für Initialisierung/Header) - `END { … }` — wird einmal ausgeführt, nachdem die gesamte Eingabe verarbeitet wurde (gut für Summen)
### Beispiele - `{print $1}` — gibt das erste Feld jeder Zeile aus - `{sum += $1} END {print sum}` — summiert die erste Spalte - `NR == 1 {next} {print}` — überspringt die Kopfzeile - `$3 > 100 {print $1, $3}` — gibt Zeilen aus, in denen das dritte Feld 100 überschreitet
### Quoting Schließen Sie das Programm in einfache Anführungszeichen ein, damit `$`, `{`, `}` nicht von der Shell interpretiert werden. Dieser Generator übernimmt das Quoting für Sie.
▶Wie parse ich eine CSV-Datei?
▶Wie berechne ich eine fortlaufende Summe?
Wenn dieses Tool Ihnen geholfen hat, zögern Sie nicht, mir einen Kaffee zu kaufen.
Kaufe mir einen Kaffee.