Cookies de statistiques et de publicité
Nous utilisons des cookies de statistiques et de publicité, tous deux destinés à Google. Si vous refusez, rien ne change visiblement pour vous.Aller à la page de confidentialité
Vous pouvez convertir GZ en ZIP gratuitement et sans compte : déposez le fichier ci-dessus et, une ou deux secondes plus tard, le résultat est prêt à télécharger. Le fichier part chiffré vers notre serveur, y est converti, puis supprimé dès la fin du travail.
Jusqu’à 100 fichiers à la fois. Les formats mélangés ne posent pas de problème.
Ils sont convertis les uns après les autres et reviennent ensemble dans un ZIP.
GZ en ZIP
L’expérience qui amène les gens ici est précise et universellement irritante. Un fichier arrive appelé quelque chose comme `project-2.1.tar.gz`, Windows ne sait pas ce que c’est, et installer un archiveur produit un second fichier appelé `project-2.1.tar` que Windows ne sait pas non plus quoi en faire. Deux étapes plus tard, il n’y a toujours rien à regarder.
Rien n’est cassé. C’est la forme normale d’une archive Unix, et elle n’a l’air étrange que si vous avez grandi avec ZIP, où la compression et le regroupement se font en une seule opération et où personne n’a à penser à la distinction. Côté Unix, ils ont toujours été deux travaux séparés faits par deux programmes séparés, et le nom de fichier enregistre les deux dans l’ordre où ils ont été appliqués — lisez `project-2.1.tar.gz` de droite à gauche et il raconte toute l’histoire : gzippé, et en dessous, taré. Une fois que vous pouvez lire l’extension ainsi, le format cesse d’être mystérieux et devient simplement peu pratique.
GZ, normalisé comme RFC 1952 en mai 1996, compresse exactement un flux d’octets. Notre registre l’enregistre comme format de flux à un seul membre et liste l’absence de toute structure de répertoire comme un problème connu — il n’y a aucun champ nulle part dans un fichier gzip pour une liste de noms de fichiers, un dossier ou une permission.
TAR fournit tout cela. C’est un regroupeur sans compression aucune, datant de 1979, qui écrit un bloc d’en-tête pour chaque fichier puis ses contenus en séquence. Mettez les deux ensemble et chacun fait bien un travail : TAR sait comment les fichiers s’appellent et où ils se trouvent, gzip rend le résultat plus petit. `.tar.gz` n’est pas une bizarrerie d’empaquetage, c’est une division du travail inscrite dans le nom de fichier. Le même schéma produit `.tar.bz2` et `.tar.xz`, qui sont l’arrangement identique avec un compresseur différent à l’extérieur — en reconnaître un, c’est en reconnaître les trois.
Le convertisseur décompresse le flux gzip puis regarde ce qui en est sorti. Si c’est un seul élément, il essaie de lire cet élément comme un TAR et, quand cela réussit, utilise son contenu comme la vraie charge utile. C’est seulement ensuite que le ZIP est écrit, depuis l’intérieur du répertoire extrait pour que vos fichiers soient au niveau supérieur plutôt qu’à l’intérieur d’un dossier enveloppe.
La vérification force le type tar plutôt que de se fier au nom de fichier, et ce détail a été appris à la dure sur les sœurs de cette paire. Parce qu’un en-tête gzip peut stocker le nom d’origine, le fichier intermédiaire arrive avec un nom sensé et une vérification basée sur le nom fonctionne ; BZ2 et XZ ne stockent aucun nom, et la même vérification ratait le tar entièrement. Le symptôme était une archive contenant une opaque blob au lieu des fichiers qui y étaient allés.
Beaucoup de fichiers gzip tiennent un fichier ordinaire et pas de tar : un dump de base de données en `backup.sql.gz`, un `access.log.gz` archivé, un seul CSV exporté. C’est gzip utilisé exactement comme prévu, et ce n’est pas une archive cassée.
Le convertisseur gère cela en se repliant. Quand le contenu décompressé ne s’analyse pas comme un TAR, il est traité comme le seul fichier qu’il est, et le ZIP que vous obtenez contient ce fichier seul. C’est pourquoi la page marche aussi bien pour le dump SQL nocturne d’un panneau d’hébergement que pour une release de sources, qui sont par ailleurs des choses très différentes portant exactement la même extension — et pourquoi vous n’avez pas besoin de savoir laquelle des deux vous avez avant de la téléverser.
Un en-tête gzip peut porter le nom d’origine et l’heure de modification de ce qui a été compressé, ce qui est une petite fonctionnalité avec un effet visible : décompresser un .gz restaure souvent un nom sensé plutôt que de vous laisser deviner. C’est la seule chose que gzip a et que ses deux voisins Unix n’ont pas.
À l’intérieur d’un tarball cette information compte moins, parce que le TAR porte déjà tous les noms. Elle compte le plus dans le cas du fichier unique ci-dessus, où le nom dans l’en-tête gzip est le seul enregistrement de comment le fichier s’appelait avant que quelqu’un renomme l’archive. Le ZIP que vous téléchargez prend la tige de votre propre fichier, donc `backup.tar.gz` revient comme `backup.zip`.
Très peu, parce que les deux formats utilisent la même compression. DEFLATE avec une fenêtre de 32 Ko est ce que gzip fait et ce que ZIP fait à chacune de ses entrées, donc les deux atterrissent à un endroit similaire sur les mêmes données.
La seule différence systématique joue contre le ZIP : gzip compresse le tar entier comme un seul flux continu et peut donc trouver des répétitions qui traversent les frontières de fichiers, tandis que le ZIP repart à zéro à chaque entrée. Sur une archive de beaucoup de petits fichiers similaires — une arborescence de sources, un jeu de fichiers de configuration — attendez-vous à ce que le ZIP soit quelques pour cent plus gros. Sur une poignée de gros fichiers, attendez-vous à aucune différence significative, et certainement pas une qui mérite d’être planifiée.
TAR enregistre un mode, un propriétaire et un groupe pour chaque membre, ce qui est précisément pourquoi l’outillage Unix l’aime. Le ZIP n’a pas d’équivalent que Windows comprend, donc ces valeurs ne voyagent pas — la règle générale pour les conversions d’archives ici est que les fichiers sortent octet pour octet et que c’est la connaissance que le conteneur avait d’eux qui est en jeu.
Pour la plupart des gens qui téléchargent un jeu de données ou un module, rien de tout cela ne compte. Cela compte si vous déplacez quelque chose qui sera exécuté plutôt que lu : les scripts perdent leur bit exécutable, et un déploiement qui le supposait échouera d’une manière qui paraît sans rapport avec l’archive. Réglez les modes à nouveau sur la machine qui en a besoin.
Cette conversion tourne sur notre convertisseur plutôt que dans la page, parce que déballer et réécrire des archives demande de vrais programmes. Votre fichier est téléversé sur une connexion chiffrée, déballé, réempaqueté en ZIP et renvoyé, et le téléversement, le tar intermédiaire et la sortie sont tous supprimés quand le travail se termine.
L’espace de travail est en mémoire, borné et jeté avec le conteneur. Le niveau gratuit accepte 25 Mo par fichier, les travaux sont tués à soixante secondes, et une archive qui déclare plus de 2 Go de contenu déballé est refusée avant que quoi que ce soit ne soit écrit — une considération réelle avec gzip, où un téléchargement modeste peut tenir un très grand arbre.
Si des fichiers .tar.gz atterrissent régulièrement dans votre dossier de téléchargements, la correction durable est un archiveur local plutôt que cette page. 7-Zip et Keka enlèvent tous deux les deux couches en une action, ne coûtent rien, marchent hors ligne et n’ont aucun plafond de téléversement — et les builds récents de Windows livrent une commande `tar` qui fait la même chose depuis un terminal sans rien installer du tout.
Utilisez le convertisseur quand vous ne pouvez pas installer de logiciel sur la machine devant vous, quand le fichier est un cas isolé, ou quand ce qu’il vous faut réellement est un ZIP à remettre à quelqu’un d’autre plutôt qu’un dossier à regarder. Ce sont des besoins réellement différents avec de meilleures réponses différentes, et une page qui insisterait pour que le convertisseur soit toujours la bonne réponse ne vous dirait pas la vérité sur votre propre situation.
Parfois le fichier qui a commencé tout cela n’est pas une archive compressée mais un artefact unique compressé : une sauvegarde WordPress qui est un dump SQL, un export qui est un énorme fichier JSON, un journal expédié depuis un serveur. L’extension .gz est identique et ne trahit rien, et c’est pourquoi tant de gens arrivent en attendant un dossier et trouvent un fichier.
La conversion gère cela dans les deux cas, et le ZIP que vous obtenez contient ce qui s’y trouvait vraiment. S’il contient un seul fichier avec un nom non familier, rien n’a échoué — l’en-tête gzip portait ce nom et le convertisseur l’a utilisé. C’est le moment de regarder l’extension en dessous plutôt que l’archive : un `.sql` veut un outil de base de données, un `.json` veut un éditeur, et aucune quantité de réempaquetage ne fera de l’un ou de l’autre un dossier de documents.
| GZ | ZIP | |
|---|---|---|
| Nom complet | Archive Gzip | Archive ZIP |
| Extension de fichier | .gz, .tgz | .zip |
| Type de média | application/gzip | application/zip |
| Compression | Sans perte — rien n’est écarté | Sans perte — rien n’est écarté |
| Première publication | 1992 | 1989 |
| Publié par | — | PKWARE |
| Spécification | RFC 1952 | APPNOTE.TXT |
| Licence | Standard ouvert | Standard ouvert |
| Situation actuelle | Actuel | Actuel |
| S’ouvre dans un navigateur | Aucun navigateur | Aucun navigateur |
| Envisagé à la place | BZ2, XZ | 7Z, TAR |
Rien n’est écarté. GZ et ZIP enregistrent leur contenu sans perte : la conversion change l’emballage, pas la qualité, et elle peut être répétée sans que les dégâts s’accumulent.
ZIP est un format de travail, GZ un format fini. Ce qui revient est du texte modifiable plutôt qu’une image de la page — c’est en général la raison de la conversion, et aussi sa limite.
ZIP contient un répertoire entier, là où GZ est un flux compressé unique. Noms, dossiers et dates sont enregistrés au lieu d’être fondus dans un seul bloc.
7-Zip lit aussi bien GZ que ZIP : vous pouvez comparer le résultat à l’original sans second logiciel.
Les deux visent des usages différents : GZ le web et l’archivage, ZIP l’échange entre programmes et la remise d’un fichier fini. Cela mérite d’être pesé avant, car ce qui justifie l’un est souvent ce qui rend l’autre malcommode.
GZ a ete publié en 1992. La spécification est RFC 1952, et elle mérite d’être connue si le fichier doit survivre à l’outil qui l’a écrit.
ZIP vient de PKWARE et date de 1989, décrit par APPNOTE.TXT. Windows Explorer, Finder et 7-Zip le lisent.
Oui : cette conversion réclame un logiciel qui ne peut pas tourner dans un navigateur. Le fichier part donc chiffré vers notre serveur. Il est supprimé dès la fin du travail, et le résultat au bout de 60 minutes. Le travail est fait par 7-Zip, l’archiveur, dans sa forme en ligne de commande.
Oui, jusqu’à 100 conversions par jour pour des fichiers jusqu’à 25 Mo. Cette unique limite existe parce que cette conversion tourne sur un serveur que nous payons. Pour le reste rien n’est limité ici, et il n’y a de filigrane dans aucun cas. La limite existe parce que 7-Zip a besoin d’une de nos machines pour tourner.
Non. ZIP enregistre le même contenu sans rien jeter : le résultat est identique en qualité à l’original. Les fichiers ressortent octet pour octet. Ce qui ne survit pas, c’est ce que le conteneur savait *à leur sujet* plutôt que ce qu’il contenait : un mot de passe et, sur certains formats, les permissions et horodatages d’origine.
ZIP contient un répertoire entier, là où GZ est un flux compressé unique. Noms, dossiers et dates sont enregistrés au lieu d’être fondus dans un seul bloc.
Rien n’est écarté. GZ et ZIP enregistrent leur contenu sans perte : la conversion change l’emballage, pas la qualité, et elle peut être répétée sans que les dégâts s’accumulent.
ZIP est un format de travail, GZ un format fini. Ce qui revient est du texte modifiable plutôt qu’une image de la page — c’est en général la raison de la conversion, et aussi sa limite.
Ce que cette page affirme sur GZ et ZIP se vérifie : voici les documents qui le fixent.