Hallo Jens,
Du kannst es mit printf() versuchen. Damit sollte die gewuenschte Ausgabe entstehen. Nach dem letzten printf()-Befehl wird dann ein Zeilenumbruch eingefuegt. Mit dieser Methode benoetigst Du auch keinen OFS (output field separator). In einer Datei gespeichert wuerde meine Loesung so aussehen:
BEGIN { FS=";"; }
{ printf("%s;%s;%s", $3, $2, $1); for (i=4; i<=7; i++) { printf(";%s",$i); } printf("\n"); }
... und waere mit
$ gawk -f dateiname eingabedatei > ausgabedatei
aufrufbar. Ich habe Deine sieben Felder in der selben Reihenfolge angeordnet, wie Du es mit print gemacht hattest.
HTH, Stefan
.