Arquivos zip com nomes com caracteres especiais (como acentos ou caracteres japoneses), que foram criados no Windows, constantemente causam problemas ao serem extraídos em máquinas
GNU/Linux que usam UTF-8.
Isso ocorre pois o
unzip do
Linux não faz a conversão corretamente durante a extração, criando arquivos com nomes cheios de caracteres errados (os chamados
mojibake).
Algumas formas de resolver isso são:
1. Usar o
Ubuntu. O Ubuntu tem uma versão patcheada do aplicativo unzip que se propõe a corrigir esse bug (não-testado);
2. Algumas pessoas reportam sucesso ao usar o
p7zip ao invés do unzip para extrair esses arquivos;
3. Utilizar a versão
Unzip-natspec, disponível em PPAs do Ubuntu, nos repositórios do Gentoo, e no AUR do Arch. Foi a solucão mais fácil e rápida, não requerendo qualquer configuracão adicional.
4. Converter manualmente. Isso envolve mudar a variável $LANG para o encoding do arquivo, extraí-lo com o 7zip e utilizar o convmv para fazer a conversão. Num arquivo japonês, por exemplo, os comandos seriam:
LANG=ja_JP
$ 7z x arquivo.zip
$ convmv --notest -f shift-jis -t utf8 -r arquivo/
Espero que ajude as pessoas tendo problemas com nomes de arquivos zipados criados no Windows!