Décompressez un fichier ZIP de plus de 4 Go sous Linux.

Conclusion

Qu'est-il arrivé à l'arrière-plan?

J'ai reçu une grande quantité de fichiers stockés localement d'un client. Étant donné que la capacité d'origine est de plusieurs centaines de Go et que c'est physiquement difficile pour moi en raison de l'influence de corona, j'ai demandé au client de la diviser au bon endroit et de la télécharger sur le serveur de fichiers, mais ces fichiers C'était la première fois qu'il s'agissait d'un ZIP de 2 à 10 Go par fichier. Je ne pouvais pas gérer des centaines de Go sur mon PC local, alors j'ai essayé de le décompresser sur le serveur ubuntu, mais j'ai rencontré divers problèmes.

1. Les fichiers ZIP de plus de 4 Go ne peuvent pas être décompressés.

En raison de l'influence de la bibliothèque sur le dos de la décompression, si elle dépasse 4 Go, l'erreur suivante se produira et elle ne pourra pas être décompressée. Je suis surpris.

Archive: xyz.zip
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.

Si c'est le seul problème, vous pouvez le résoudre en installant 7z.

sudo apt install p7zip-full

Dans 7z, vous pouvez décompresser avec e ou x, mais e ignore la structure du dossier et décompresse, donc normalement décompresser avec x.

7z x -o destdir xyz.zip

2. SHIFT-JIS est brouillé

La plupart des utilisateurs japonais de Windows utilisent la norme SHIFT-JIS. Puisque ZIP ne convertit pas le code de caractère, le nom de fichier SJIS est enregistré en tant que SJIS tel quel. Les Linux et Mac récents sont UTF8, donc les caractères seront déformés lors de la décompression. Lorsque j'ai cherché sur Google, diverses solutions (telles que la modification du paramètre LANG ou l'utilisation de convnv) sont sorties, mais aucune d'elles n'a fonctionné.

À la suite de divers googles, il a été résolu en un seul coup en décompressant avec unar. L'installation est possible ci-dessous

sudo apt install unar

La décompression est simple

unar xyz.zip

Vous pouvez le faire avec. Si le dossier existe, on vous demandera si vous voulez l'écraser, donc s'il est gênant, utilisez -f.

finalement

Je pense qu'il y a plusieurs choses, mais il semble que les gens qui n'utilisent pas ZIP seront plus heureux.

Recommended Posts

Décompressez un fichier ZIP de plus de 4 Go sous Linux.
Décompressez le fichier zip Internet
Sous Linux, l'horodatage d'un fichier est un peu dépassé.
Installez Arch Linux sur DeskMini A300
Exécutez un serveur Linux avec GCP
Créer un environnement Linux sur Windows 10
Construisez un serveur WebDAV simple sur Linux
Faire de Unity Accelerator un service sous Linux
Renommer en fonction de l'heure de modification du fichier (Linux)
Créer une machine virtuelle Linux sous Windows
[Linux] Commandes de compression et de décompression de fichiers zip [Vim]
Comment déguiser un fichier ZIP en fichier PNG
Démarrer un processus avec une politique de planification sous Linux
Je veux enregistrer les entrées / sorties de fichiers sous Linux