Hallo, Am Mit, 31 Jan 2007, Sandy Drobic schrieb:
Rolf-Hubert Pobloth wrote: [..] /tmp/datei.csv: KUNDENKARTE;;;;; zeile1-f1;zeile1-f2;zeile1-f3;zeile1-f4;zeile1-f5;zeile1-f6; zeile2-f1;zeile2-f2;zeile2-f3;zeile2-f4;zeile2-f5;zeile2-f6; KUNDENKARTE;;;;; zeile1-f1;zeile1-f2;zeile1-f3;zeile1-f4;zeile1-f5;zeile1-f6; zeile2-f1;zeile2-f2;zeile2-f3;zeile2-f4;zeile2-f5;zeile2-f6;
/tmp/insertcounter.sh: [..] counter=0 cat /tmp/datei.csv| while read line do [..] done
*uargs* Sorry Sandy, aber das ist ganz übel... *SCNR* $ awk 'BEGIN { FS=";"; OFS=";"; } /KUNDENKARTE/{ cnt++; } { $7 = sprintf("%06i", cnt); print; }' /tmp/datei.csv KUNDENKARTE;;;;;;000001 zeile1-f1;zeile1-f2;zeile1-f3;zeile1-f4;zeile1-f5;zeile1-f6;000001 zeile2-f1;zeile2-f2;zeile2-f3;zeile2-f4;zeile2-f5;zeile2-f6;000001 KUNDENKARTE;;;;;;000002 zeile1-f1;zeile1-f2;zeile1-f3;zeile1-f4;zeile1-f5;zeile1-f6;000002 zeile2-f1;zeile2-f2;zeile2-f3;zeile2-f4;zeile2-f5;zeile2-f6;000002 Beim 'cnt++' bin ich mir nicht sicher, ob das portabel ist, garantiert gehen würde: /KUNDENKARTE/{ cnt = cnt + 1; } oder auch (meist?) /KUNDENKARTE/{ cnt += 1; } Im Standard http://www.opengroup.org/onlinepubs/007908799/xcu/awk.html sind alle drei Varianten drin und mit GNU awk -W traditional etc. bekomme ich keine Warnungen. Es sollte also auch 'cnt++' portabel sein. -dnh -- 274: Nikoma-Newsserver Museum für prähistorische Gruppen. (Ulrich Mindrup) -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org