Я хотел бы вызвать утилиту командной строки в Mac OS X 10.8, которая дает мне возможность конвертировать текстовый файл, сохраненный в стандартной римской кодировке Western Mac OS, в более общий UTF-8.
Я буду вызывать утилиту из AppleScript, который я создал. AppleScript очень медленный при работе с очень большими текстовыми блоками. Таким образом, я хочу сделать мой анализ текста и преобразование, используя командную строку OS X. Я нашел инструмент под названием «sed», который позволяет мне выполнять анализ текста. Тем не менее, есть еще много элементов файла, которые необходимо очистить, символы, которые появляются как мусор, если файл открывается как utf-8 (например, умные кавычки и эллипсы).
Я думаю, что принудительное преобразование кодировки текста может помочь устранить все не-UTF8 символы в файле. Тем не менее, я не вижу, как «sed» может легко преобразовать кодировку текста.
Я уже сохраню временный текстовый файл, как MacRoman, на диск, используя встроенные процедуры AppleScript.
У кого-нибудь из вас есть идеи относительно встроенного инструмента командной строки, который может преобразовывать кодировку текста? Командная строка для производительности и встроенная, так как другие пользователи моего скрипта не обязательно будут иметь надлежащий набор инструментов, если он не встроен.
Спасибо за вашу помощь!
Ответы:
Другой способ преобразования не-ASCII символов в варианты ASCII - использовать
iconv -t ASCII//TRANSLIT
:ASCII//IGNORE
удалит не-ASCII символы, но вы также можете сделать это, напримерtr -dc '\0-\177'
.источник
iconv
транслитерацию: ä → a "?ä
простоa
.iconv
безусловно, является инструментом выбора здесь:Запустите,
iconv --list
чтобы увидеть список всех поддерживаемых кодировок.источник