Назад | Перейти на главную страницу

Кодировка умлаута: tar на Mac Lion

У меня есть архив tar, созданный на старой машине Unixware с использованием кодировки ISO8859-1. Когда я пытаюсь извлечь его под 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 backup.tar главная / франк

"ä" также отображается правильно в выводе tar, но когда я перечисляю содержимое каталога, я вижу:

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

Что с этим?

Имена файлов в HFS + находятся в формате UTF-8, а не в какой-либо другой кодировке (ну, кроме MacRoman для старых файлов). Вы можете увидеть код, связанный с этим, в исходный код ядра; например, в getdirentries_callback() в hfs_catalog.c.