我想在Mac OS X 10.8中调用命令行实用程序,它使我能够将以标准Western Mac OS Roman编码保存的文本文件转换为更通用的UTF-8。
我将从我创建的AppleScript中调用该实用程序。使用非常大的文本块时,AppleScript的运行速度非常慢。因此,我想使用OS X命令行进行文本解析和转换。我发现了一个名为“ sed”的工具,它使我能够进行文本解析。但是,文件中仍有许多元素需要清理,如果以utf-8格式打开文件,这些字符将显示为垃圾内容(例如,智能引号和省略号)。
我认为强制文本编码转换可能有助于消除文件中的所有非utf8字符。但是,我看不到“ sed”如何轻松转换文本编码。
我将已经使用内置的AppleScript例程将temp txt文件(如MacRoman)保存到磁盘。
你们是否对可以转换文本编码的内置命令行工具有任何想法?性能和内置命令行,因为脚本的其他用户如果不是内置的,则不一定具有适当的工具集。
谢谢你的帮助!
该命令是iconv。
—
bmargulies
@bmargulies:当我在MacRoman编码的文件上尝试使用iconv并尝试将其转换为UTF-8时,我得到了垃圾字符来代替原始的“异常字符”。例如,省略号转换为“ Äö√Ѭ∂‚Äöö√Ѭ∂”。我希望省略号可以优雅地转换为六个时期。智能引号是相同的,它们也转换为奇怪的文本,变成“Äö√Ñ√≤”。我使用的语法是:cat source.txt | iconv -f MacRoman -t UTF-8> iconv_test.txt是否存在特定的CLI语法,该语法将告诉iconv将所有文本正常转换为适当的替换内容?
您会通过哪些论点?
—
bmargulies
@Darkstar-您的相同步骤对我来说很好。您确定来源来自MacRoman吗?
—
Tom Gewecke
Excel中不应该有这个问题,你应该能够设置编码,以任何你想要的进口,如见superuser.com/questions/280603/...
—
汤姆Gewecke