如何生成在 Mac OS Roman 中编码的文件

Duc*_*uck 4 shell character-encoding

在 bash 脚本中,我有一行创建然后在循环中,将字符串附加到文本文件中,例如

echo $myTextString >> file.txt 
Run Code Online (Sandbox Code Playgroud)

我需要使用Western (Mac OS Roman)格式化这个最终文件。

脚本启动时该文件不存在,因此第一行将创建该文件。有没有办法使文件成为该格式或在最后将其转换为这种 Mac OS Roman 格式?我如何在 bash 脚本中做到这一点?

Dal*_*ker 6

您可以使用iconv字符集转换 GNU 实用程序。下面是一个例子:

iconv --from-code=UTF-8 --to-code=MAC INPUTFILE > OUTPUTFILE

其中INPUTFILEOUTPUTFILE是原始文件和转换文件的名称(可能相同)。UTF-8如果它不是 Unicode,并且MAC可能不是您正在寻找的编码,您还需要替换为您的本机编码:iconv -l为您提供一个可供选择的可能编码列表(在我的系统中,它们中没有一个对应于“西方(Mac OS Roman)”的明显方式。