awk adiciona vírgula extra em vários lugares

1

Eu quero adicionar um timestamp com o awk para um arquivo CSV. Para gerar o timestamp funciona, mas o arquivo CSV resultante tem alguma vírgula extra em vários locais. Como posso resolver o problema?

origem-CSV (1ª linha):

time,latitude,longitude,depth,mag,magType,nst,gap,dmin,rms,net,id,updated,place,type 2015-03-13T07:53:53.950Z,38.838501,-122.8300018,3.01,0.18,md,9,93,0.004285,0.02,nc,nc72410280,2015-03-13T08:08:04.639Z,"9km W of Cobb, California",earthquake

awk:

awk -F"," 'BEGIN { OFS = "," ; print "time","latitude","longitude","depth","mag","magType","nst","gap","dmin","rms","net","id","updated","place","type","timestamp"} NR>$0{"date +%s -d"$1""| getline dte;$17=dte; print}' origin.csv > result.csv

Fiquei surpreso por ter funcionado apenas com US $ 17 em vez de US $ 16, embora a coluna timestamp seja o 16º.

resultado para a 5ª linha:

time,latitude,longitude,depth,mag,magType,nst,gap,dmin,rms,net,id,updated,place,type,timestamp 2015-03-13T06:46:45.450Z,-55.1707,-128.8193,10,4.9,mb,,116,31.469,0.59,us,us10001m1z,2015-03-13T07:36:31.510Z,"Pacific-Antarctic Ridge",earthquake,,1426229205

aqui estão duas vírgulas em vez de uma.

    
por Basti 13.03.2015 / 10:35

1 resposta

0

@Archemar
oh homem, tão estúpido. Isso resolveu o problema. Deletado linha "tipo" e "lugar" (felizmente eu não preciso deles) e agora funciona ... muito obrigado por dar uma olhada

    
por 13.03.2015 / 11:50

Tags