Kleine awk Aufgabe
Hallo,
habe lange nichts mehr mit dem Unix-Tool 'awk' gemacht, würde mit awk (unter Windows) gerne folgende Aufgabe lösen.
Habe eine (große) Textdatei (Name=File.txt), Feldtrenner ist das Leerzeichen " ".
Wenn das 3. Feld (ist ein einzelnes Zeichen) das Zeichen "R" ist, soll die ganze Zeile in die Datei R.out geschrieben (hinzugefügt) werden.
Wenn das 3. Feld (ist ein einzelnes Zeichen) das Zeichen "M" ist, soll die ganze Zeile in die Datei M.out geschrieben (hinzugefügt) werden.
Wie lautet der Syntax dafür?
Vermutich geht das sogar in einem einzelnen awk-Aufruf, aber ausreichend wäre es auch, wenn ich pro "Filterkriterium" einen extra awk starten müßte (also erst einmal die R.out erzeugen, im nächsten Durchlauf mit geändertem awk die M.out).
Ergänzung:
Es kommt eine Erschwerniss hinzu:
Falls das 3.Feld nicht ein einzelnes Zeichen ist, sollen die nachfolgenden Zeilen in die letzte (Treffer-)Datei geschrieben werden.
Bsp:
Otto 455 R werwr980r9wer9ew ==> R.out
Klaus 342 M weerewrewrewrwer ==> M.out
Susi 123 R erwerwerewrewkjrew ==> R.out
Susi 632356557 328438243487 4373473473457 ==> weiterhin in: R.out
Susi 32843247324 4543548543 343434 ==> weiterhin in: R.out
Otto 636 M 8443857438535 => M.out
Thx!
|