Moin David. David Haller, Montag, 7. Juni 2004 15:02:
awk -F "\." '{ for(i=$1; i<=$3; i++) { print i; } }'
Wie ich gestern schon schrieb konnte ich mir mit diesem Denkanstoß etwas zusammenbauen, was gut funktioniert. Gut? Nicht ganz, denn: Die Quelltabelle hat 13390 Datensätze, die mittlerweile so aussehen: 01001;01465;Dresden;Dresden;Sachsen 01435;01445;Meißen-Radebeul;Dresden;Sachsen [+13388 weitere Datensätze] Lasse ich awk folgendermaßen drüberlaufen: awk -F "\;" '{ for(i=$1; i<=$2; i++) { print i, $3, $4, $5 ; } }' OFS="\;" < datei > output Dann stimmen die ersten paar hundert oder auch paar Tausend Datensätze. Aber irgendwann verschluckt sich awk offenbar, und es stehen Werte zusammen in einer Output-Zeile, die in der Input-Tabelle nicht in einer Zeile standen. Ich habe das mehrfach überprüft, die Quelldatei ist OK. Es sieht für mich so aus, als würde awk die Zeilen plötzlich durcheinanderbringen. Frage: habe ich bei awk ein Überlaufproblem, oder sowas in der Art? Denn wenn ich awk über eine Quelle mit nur ein paar Zeilen drüberjage, dann stimmt alles völlig einwandfrei Ratlos. Andy -- Antworten an lists@feile.net werden in /dev/null archiviert! Bitte ggf. lists... durch mail... ersetzen. Andreas Feile www.feile.net