tr을 사용하여 탭으로 구분된 변수 파일을 쉼표로 구분된 변수 파일로 변환할 수 없습니다.

tr을 사용하여 탭으로 구분된 변수 파일을 쉼표로 구분된 변수 파일로 변환할 수 없습니다.

~에 대한이 txt 파일, 내용이 포함된 줄 사이에 빈 줄이 있는 탭으로 구분된 .txt 파일로 가장 잘 설명됩니다.

사람들은 달리기를 생각한다

cat goods.txt | tr "\t" "," > output.csv.txt 파일은 .csv로 깔끔하게 변환되어야 합니다.

(에 따르면이 스택 오버플로 솔루션)

그러나 값과 텍스트가 잘못된 열로 전송되는 것을 관찰했습니다.

여기에 이미지 설명을 입력하세요.

다른 경우에는 숫자가 열 간에 분할됩니다.

여기에 이미지 설명을 입력하세요.

내가 무엇을 간과하고 있는지 잘 모르겠습니다. 여기에 필요한 파일 변환을 달성하는 올바른 방법은 무엇입니까?

답변1

밀러 사용(https://github.com/johnkerl/miller)

mlr --t2c cat goods.txt >goods.csv

당신은이 출력을 얻을 것이다https://gist.github.com/aborruso/fab6a48a390a9c54de55dece9141bea6

그것이 당신이 원하는 것입니까?

답변2

다음 csvkit 유틸리티는 .txt를 .csv 파일로 깔끔하게 변환합니다.

csvformat -t 화물.txt

크레딧은 reg로 이동합니다.월풀 포럼.

CSV 형식에 대한 추가 정보여기(CSV 파일을 사용자 정의 출력 형식으로 변환).

에 따르면 또한 참고하시기 바랍니다csvkit 매뉴얼:

===========

각 csvkit 도구는 다음을 수행합니다.

  • –quoting(-u) 옵션이 이 동작을 변경하도록 설정되지 않은 경우 선택적 인용 문자를 제거합니다.

  • –delimiter(-d) 또는 –tabs(-t) 옵션을 사용하여 입력 구분 기호를 설정한 경우 필드 구분 기호를 쉼표로 변경합니다.

  • 레코드 구분 기호를 줄 바꿈으로 변경

  • –quotechar (-q) 옵션을 사용하여 따옴표 문자를 설정한 경우 따옴표 문자를 큰따옴표로 변경합니다.

  • –encoding(-e) 옵션을 사용하여 입력 인코딩을 설정한 경우 문자 인코딩을 UTF-8로 변경합니다.

===========

관련 정보