I used to have this problem when transferring client lists to Foxpro or Excel.
You are going to have to run a for loop or some kind of loop. Do all of your data files have the same number of fields? I keep thinking of the "join" function of vi. I know you can join X lines with the command in command mode "7 J". This will join 7 lines together, space delimited which should be fine for your purposes or you can then use AWK to fill in commas.
OR try this.
Forgive me if the logic is wrong this was off the top of my head.
The ; is for a new record. You can then use AWK to break it out 1 record per line from there. I think there is a way to do a CRLF but I don't remember right now.
i=1
for name in `cat file`
do
if [$i -le 8 ]
awk '{ print $1 "," }' >> file.out
i=i+1
else
awk '{ print ";" }' >> file.out
i=1
done
I will have to research this, but you probably can figure it out from here.
////EDIT HERE:
That first attempt doesn' t seem to work. Here is something else I have tried.
#!/bin/ksh
for name in `cat todd`
do
for i in `1 2 3 4 5 6 7 8`
do
awk '{ print $name "," }' >> file.out
if [$i -eq 8]
then
awk '{ print ";" }' >> file.out
fi
done
done
Although I can't get it to work either... Heheh