变音编码:Mac Lion 上的 tar

变音编码:Mac Lion 上的 tar

我在一台旧的 Unixware 机器上使用 ISO8859-1 编码创建了一个 tar 存档。当我尝试在 Macosx Lion 下提取它时,我发现德语变音符号有点奇怪。例如:

我打开一个 terminal.app 窗口,将编码设置为“ISO8859-1”,并像这样设置我的语言环境:

export LANG=de_DE.ISO8859-1
export LC_ALL=de_DE.ISO8859-1

然后看一下档案:

dhcp202:Downloads frank$ tar tvf backup.tar home/frank
x home/frank/
x home/frank/Präferenzen/

请注意“ä”显示正确

然后我用

tar xvf 备份.tar home/frank

“ä” 在 tar 的输出中也正确显示,但是当我列出目录内容时,我看到:

dhcp202:Downloads frank$ ls home/frank
Pr%E4ferenzen 

那是怎么回事?

答案1

HFS+ 上的文件名采用 UTF-8 格式,而不是任何其他编码(除了旧文件的 MacRoman)。您可以在内核源代码;例如,在getdirentries_callback()hfs_catalog.c

相关内容