붙여넣기 명령은 csv 파일에 데이터를 가로로 나란히 배치하는 대신 행별로 세로로 배치합니다.

붙여넣기 명령은 csv 파일에 데이터를 가로로 나란히 배치하는 대신 행별로 세로로 배치합니다.

각각 ","로 구분된 3개의 열을 포함하는 일부 CSV가 있습니다. 예:

header1,header2,header3
value1,value2,value3
value1,value2,value3
...

사용이 튜토리얼, 실행하면 paste -d "," *csv > output.csv다음과 같은 결과가 나올 것이라고 생각합니다.

header1,header2,header3,header1,header2,header3,...
value1,value2,value3,value1,value2,value3,...
value1,value2,value3,value1,value2,value3,...

그러나 출력은 다음과 같습니다.

header1,header2,header3,
header1,header2,header3,
header1,header2,header3,
...
value1,value2,value3,
value1,value2,value3,
...

특히 각 행의 너비는 csv 파일 수 * 3 너비가 아니라 3열 너비입니다.

내가 뭘 잘못했나요?

답변1

원본 파일에는 \r\n줄 끝이 있을 가능성이 높습니다.

그렇다면 최종 파일은 \r각 선분 사이에 추가 콘텐츠를 갖게 됩니다. 다음을 사용해 보세요 tr:

paste -d "," *csv | tr -d "\r" > output.csv

관련 정보