텍스트 인코딩을 한 유형에서 다른 유형으로 변환 할 수있는 Mac OS X 명령 행 응용 프로그램이 있습니까? (특히 Mac OS Roman을 utf8로 변환) 변환 할 수

Mac OS X 10.8에서 명령 줄 유틸리티를 호출하여 표준 Western Mac OS Roman 인코딩으로 저장된 텍스트 파일을보다 일반적인 UTF-8로 변환 할 수 있습니다.

내가 만든 AppleScript에서 유틸리티를 호출합니다. 매우 큰 텍스트 블록으로 작업 할 때 AppleScript가 매우 느립니다. 따라서 OS X 명령 줄을 사용하여 텍스트 구문 분석 및 변환을 수행하려고합니다. 텍스트 구문 분석을 수행 할 수있는 “sed”라는 도구를 찾았습니다. 그러나 파일을 utf-8로 열면 가비지로 나타나는 문자 (예 : 스마트 인용 부호 및 줄임표)로 정리해야하는 파일 요소가 여전히 많이 있습니다.

텍스트 인코딩 변환을 강제하면 파일에서 UTF8이 아닌 문자를 모두 제거하는 데 도움이 될 수 있다고 생각합니다. 그러나 “sed”가 어떻게 텍스트 인코딩을 쉽게 변환 할 수 있는지 알 수 없습니다.

내장 AppleScript 루틴을 사용하여 이미 temp txt 파일을 MacRoman으로 디스크에 저장했습니다.

텍스트 인코딩을 변환 할 수있는 내장 명령 줄 도구에 대한 아이디어가 있습니까? 내 스크립트의 다른 사용자가 기본 제공 도구가 아닌 경우 적절한 도구 세트를 가질 필요가 없기 때문에 성능 및 기본 제공을위한 명령 줄.

당신의 도움을 주셔서 감사합니다!



답변

비 ASCII 문자를 ASCII 변형으로 변환하는 또 다른 방법은 다음을 사용하는 것입니다 iconv -t ASCII//TRANSLIT.

$ echo ‘’“”–—…äé | iconv -t ASCII//TRANSLIT
''""--..."a'e

ASCII//IGNORE비 ASCII 문자를 제거하지만 예를 들어 tr -dc '\0-\177'.


답변

iconv 확실히 여기에서 선택하는 도구입니다.

iconv -f MACROMAN -t UTF-8 your-roman-encoded-file.txt > utf-8-encoded-file.txt

iconv --list지원되는 모든 인코딩 목록을 보려면 실행 하십시오.