awk는 여러 곳에 쉼표를 추가합니다.

awk는 여러 곳에 쉼표를 추가합니다.

awk를 사용하여 CSV 파일에 타임스탬프를 추가하고 싶습니다. 생성된 타임스탬프는 작동하지만 결과 CSV 파일의 몇몇 위치에 추가 쉼표가 있습니다. 이 문제를 어떻게 해결할 수 있나요?

원본-CSV(첫 번째 행):

시간, 위도, 경도, 깊이, mag, magType, nst, gap, dmin, rms, net, id, 업데이트, 위치, type2015-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,"캘리포니아주 콥에서 서쪽으로 9킬로미터",지진

이상한:

awk -F"," 'BEGIN { OFS = "," ;"시간", "위도", "경도", "깊이", "mag", "magType", "nst", "gap", "dmin 인쇄 " ","rms","net","id","업데이트됨","location","type","timestamp"} NR>$0{"Date+%s -d"$1""| getline dte ;$17 =dte;print}' Origin.csv > result.csv

타임스탬프 열이 열 16임에도 불구하고 $16이 아닌 $17에만 작동한다는 사실에 놀랐습니다.

5번째 줄의 결과:

시간, 위도, 경도, 깊이, mag, magType, nst, gap, dmin, rms, net, id, 업데이트, 위치, 유형, timestamp2015-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,"태평양-남극 능선",지진,,1426229205

여기에는 하나가 아닌 두 개의 쉼표가 있습니다.

답변1

@Archemar
OMG 정말 멍청하네요. 이로써 문제가 해결되었습니다. "type" 및 "position" 줄을 제거했는데(다행히도 필요하지 않음) 이제는 작동합니다... 찾아주셔서 감사합니다.

관련 정보