web-dev-qa-db-fra.com

Comment décompresser un fichier Zip japonais et éviter les caractères mojibake / garbled

J'ai reçu un fichier Zip d'un client japonais.

Lorsque j'essaie de le décompresser, les noms de fichiers et de dossiers sont confus:

$ unzip ~/Downloads/【新入荷ECM】資料.Zip
...
 inflating: БyРVУ№Й╫ECMБzОСЧ┐/123_ГЖБ[ГXГPБ[ГX.xlsx

Quel est le problème et comment l'éviter?

3
Nicolas Raoul

Le problème est que la plupart des fichiers ZIP circulant au Japon ont leur contenu codé sous la forme Shift JIS , qui n'est pas affiché correctement par défaut sous Ubuntu.

La solution consiste à utiliser l'option -O shift-jis dans votre commande:

$ unzip -O shift-jis ~/Downloads/【新入荷ECM】資料.Zip
...
 inflating: 【新入荷ECM】資料/123_ユースケース.xlsx

De cette façon, les fichiers développés sont parfaitement lisibles dans Ubuntu.

5
Nicolas Raoul

Réponse simple pour cela

$ Sudo apt install unar
$ unar ~/Downloads/【新入荷ECM】資料.Zip

unar peut reconnaître automatiquement le codage utilisé. Il ne fait que l'extraction et pas pour la compression.

Ensuite, utilisez ' convmv ' pour coder le texte après extraction.

$ convmv -f shift_jis -t utf8 БyРVУ№Й╫ECMБzОСЧ┐/123_ГЖБ[ГXГPБ[ГX.xlsx --notest

Inversement, si vous souhaitez créer un ou des fichiers d’utf8 dans un texte shift_jis pour Windows.

$ convmv -f utf8 -t shift_jis <filename> --notest

Des réponses alternatives, l’utilisation de l’équipe japonaise Ubuntu japonaise ont créé l’encodage automatique ' unzip ' mais vous devez ajouter référentiel .

2
Sadaharu Wakisaka