Cookie di statistica e di pubblicità
Usiamo cookie di statistica e di pubblicità, entrambi inviati a Google. Rifiutare non cambia niente di quello che vedi.Leggi la pagina sulla privacy
Qui converti GZ in ZIP gratis e senza account: trascina il file qui sopra e in un paio di secondi il risultato è pronto da scaricare. Il file viaggia cifrato fino al nostro server, viene convertito lì e viene cancellato appena il lavoro finisce.
Fino a 100 file alla volta. Formati diversi insieme non sono un problema.
Vengono convertiti uno dopo l’altro e scaricati insieme in uno ZIP.
GZ in ZIP
L’esperienza che porta qui è precisa e universalmente irritante. Arriva un file che si chiama qualcosa come `progetto-2.1.tar.gz`, Windows non sa cosa sia, e installando un gestore di archivi si ottiene un secondo file chiamato `progetto-2.1.tar` di cui Windows non sa cosa fare. Due passi, e non c’è ancora niente da guardare.
Nulla è rotto. È la forma normale di un archivio Unix, e sembra strana solo se si è cresciuti con lo ZIP, dove compressione e bundling avvengono in un’unica operazione e nessuno deve pensarci. Sul lato Unix sono sempre stati due lavori separati fatti da due programmi separati, e il nome del file li registra entrambi nell’ordine in cui sono stati applicati — leggere `progetto-2.1.tar.gz` da destra racconta tutta la storia: gzippato, e sotto, archiviato in tar. Una volta che si sa leggere l’estensione così, il formato smette di essere misterioso e diventa soltanto scomodo.
GZ, standardizzato come RFC 1952 nel maggio 1996, comprime esattamente un flusso di byte. Il registro lo registra come formato a flusso con un singolo membro ed elenca l’assenza di una struttura di directory come problema noto — non c’è un campo in un file gzip per un elenco di nomi, una cartella o un permesso.
TAR fornisce tutto ciò. È un bundler senza alcuna compressione, risalente al 1979, che scrive un blocco di header per ogni file e poi il contenuto in sequenza. Mettendoli insieme, ciascuno fa bene il proprio lavoro: TAR sa come si chiamano i file e dove stanno, gzip rende il risultato più piccolo. `.tar.gz` non è una bizzarria di packaging, è una divisione del lavoro scritta nel nome del file. Lo stesso schema produce `.tar.bz2` e `.tar.xz`, che sono la stessa disposizione con un compressore diverso fuori — riconoscerne uno significa riconoscerli tutti e tre.
Il convertitore decomprime il flusso gzip e poi guarda ciò che ne è uscito. Se è un singolo elemento, prova a leggerlo come TAR e, quando ci riesce, usa il suo contenuto come payload reale. Solo a quel punto lo ZIP viene scritto, dall’interno della directory estratta, così i file stanno al livello superiore anziché dentro una cartella wrapper.
Il controllo forza il tipo tar anziché fidarsi del nome del file, e quel dettaglio è stato imparato sulla propria pelle dai fratelli di questa coppia. Poiché un header gzip può memorizzare il nome originale, il file intermedio arriva con un nome sensato e un controllo basato sul nome funziona; BZ2 e XZ non memorizzano alcun nome, e lo stesso controllo mancava del tutto il tar. Il sintomo era un archivio contenente un blob opaco al posto dei file che c’erano entrati.
Molti file gzip contengono un file ordinario e nessun tar: un dump di database come `backup.sql.gz`, un `access.log.gz` ruotato, un singolo CSV esportato. È gzip usato esattamente come è stato progettato, e non è un archivio rotto.
Il convertitore lo gestisce con un ripiego. Quando il contenuto decompresso non si analizza come TAR, viene trattato come il singolo file che è, e lo ZIP ottenuto contiene quel file da solo. Ecco perché la pagina funziona altrettanto bene per un dump SQL notturno di un pannello di hosting e per una release di sorgenti, che sono cose altrimenti molto diverse con esattamente la stessa estensione — e perché non serve sapere quale dei due si ha prima di caricarlo.
Un header gzip può portare il nome originale e l’ora di modifica di ciò che è stato compresso, un piccolo dettaglio con un vantaggio visibile: decomprimere un `.gz` spesso restituisce un nome sensato anziché lasciare indovinare. È l’unica cosa che gzip ha e che i suoi due fratelli Unix non hanno.
Dentro un tarball quell’informazione conta meno, perché il TAR porta già ogni nome. Conta di più nel caso del singolo file sopra, dove il nome nell’header gzip è l’unica traccia di come si chiamava il file prima che qualcuno rinominasse l’archivio. Lo ZIP scaricato prende il nome del proprio file, quindi `backup.tar.gz` torna come `backup.zip`.
Molto poco, perché entrambi i formati usano la stessa compressione. DEFLATE con una finestra di 32 KB è ciò che fa il gzip e ciò che lo ZIP fa a ciascuna delle sue voci, quindi i due approdano in un luogo simile sugli stessi dati.
L’unica differenza sistematica va contro lo ZIP: il gzip comprime l’intero tar come un singolo flusso continuo e può quindi trovare ripetizioni che attraversano i confini dei file, mentre lo ZIP riparte a ogni voce. Su un archivio di molti file piccoli e simili — un albero di sorgenti, un set di file di configurazione — aspettarsi uno ZIP di qualche percento più grande. Su una manciata di file grandi, non aspettarsi differenze significative, e certamente non tali da pianificare attorno.
TAR registra modalità, proprietario e gruppo per ciascun membro, ed è esattamente il motivo per cui la toolchain Unix lo apprezza. ZIP non ha un equivalente che Windows comprenda, quindi quei valori non viaggiano — la regola generale delle conversioni di archivi qui è che i file escono byte per byte e ciò che il contenitore sapeva di loro è ciò che è a rischio.
Per la maggior parte delle persone che scaricano un dataset o un plugin, nulla di tutto ciò conta. Conta se si sta spostando qualcosa che verrà eseguito anziché letto: gli script perdono il bit di eseguibile, e una distribuzione che lo dava per scontato fallisce in un modo che sembra estraneo all’archivio. Reimpostare le modalità sulla macchina che ne ha bisogno.
Questa conversione gira sul nostro convertitore anziché nella pagina, perché spacchettare e riscrivere archivi richiede programmi reali. Il file viene caricato su una connessione cifrata, spacchettato, reimpacchettato come ZIP e rispedito, e il caricamento, il tar intermedio e l’output vengono tutti eliminati quando il lavoro termina.
Lo spazio di scratch è appoggiato in memoria, delimitato e scartato con il container. Il piano gratuito prende 25 MB per file, i lavori vengono terminati a sessanta secondi, e un archivio che dichiara più di 2 GB di contenuto spacchettato viene rifiutato prima che venga scritto qualcosa — una considerazione reale col gzip, dove un download modesto può contenere un albero molto ampio.
Se file `.tar.gz` finiscono regolarmente nella propria cartella dei download, la soluzione durevole è un gestore di archivi locale anziché questa pagina. Sia 7-Zip sia Keka tolgono entrambi gli strati in un’azione, non costano nulla, funzionano offline e non hanno alcun tetto di upload — e le build recenti di Windows includono un comando `tar` che fa la stessa cosa da terminale senza installare nulla.
Usare il convertitore quando non si può installare software sulla macchina davanti a sé, quando il file è una tantum, o quando ciò che serve davvero è uno ZIP da consegnare a qualcun altro anziché una cartella da esplorare. Sono esigenze genuinamente diverse con risposte giuste diverse, e una pagina che insistesse che il convertitore è sempre la risposta giusta non starebbe dicendo la verità sulla propria situazione.
A volte il file che ha dato il via a tutto non è un archivio compresso ma un singolo artefatto compresso: un backup di WordPress che è un dump SQL, un export che è un unico file JSON enorme, un log spedito da un server. L’estensione `.gz` è identica e non rivela nulla, ed è per questo che tanti arrivano qui aspettandosi una cartella e trovano un singolo file.
La conversione gestisce la cosa in entrambi i modi, e lo ZIP ottenuto contiene ciò che c’era davvero dentro. Se contiene un singolo file con un nome poco familiare, non è fallito nulla — l’header gzip portava quel nome e il convertitore lo ha usato. È il momento di guardare l’estensione sottostante piuttosto che l’archivio: un `.sql` vuole uno strumento per database, un `.json` vuole un editor, e nessun reimpacchettamento farà diventare l’uno o l’altro una cartella di documenti.
| GZ | ZIP | |
|---|---|---|
| Nome completo | Archivio Gzip | Archivio ZIP |
| Estensione del file | .gz, .tgz | .zip |
| Tipo di media | application/gzip | application/zip |
| Compressione | Senza perdita — non si butta via niente | Senza perdita — non si butta via niente |
| Prima pubblicazione | 1992 | 1989 |
| Pubblicato da | — | PKWARE |
| Specifica | RFC 1952 | APPNOTE.TXT |
| Licenza | Standard aperto | Standard aperto |
| Situazione attuale | Attuale | Attuale |
| Si apre nel browser | Nessun browser | Nessun browser |
| Valutato al suo posto | BZ2, XZ | 7Z, TAR |
Non si scarta nulla. GZ e ZIP salvano il contenuto senza perdita: la conversione cambia la confezione, non la qualità, e si può ripetere senza che i danni si accumulino.
ZIP è un formato di lavoro e GZ è un formato finito. Torna testo modificabile invece di un'immagine della pagina, che di solito è il motivo della conversione e insieme il suo limite.
ZIP contiene un'intera cartella, mentre GZ è un singolo flusso compresso. Nomi, cartelle e date restano registrati invece di sparire in un blocco unico.
7-Zip legge sia GZ sia ZIP, quindi puoi confrontare il risultato con l'originale senza un secondo programma.
I due puntano a lavori diversi: GZ a il web e l'archiviazione, ZIP a spostare dati fra programmi e consegnare un file finito. Vale la pena valutarlo prima, perché il motivo per cui esiste uno è di solito il motivo per cui l'altro risulta scomodo.
GZ è stato pubblicato nel 1992. È descritto in RFC 1952, e vale la pena conoscerlo se il file deve sopravvivere allo strumento che lo ha scritto.
ZIP viene da PKWARE e risale al 1989, descritto in APPNOTE.TXT. Windows Explorer, Finder e 7-Zip lo leggono.
Sì: questa conversione ha bisogno di un software che in un browser non può girare. Il file viaggia cifrato fino al nostro server, viene cancellato appena il lavoro finisce e il risultato dopo 60 minuti. Il lavoro lo fa 7-Zip, l’archiviatore, nella sua forma da riga di comando.
Sì, fino a 100 conversioni al giorno per file fino a 25 MB. Quell’unico limite esiste perché questa conversione gira su un server che paghiamo noi. Per il resto qui non c’è niente di limitato, e la filigrana non c’è in nessun caso. Il limite esiste perché 7-Zip ha bisogno di una nostra macchina per girare.
No. ZIP conserva lo stesso contenuto senza buttare via niente: il risultato è identico in qualità all’originale. I file escono identici byte per byte. Quello che non sopravvive è ciò che il contenitore sapeva *su* di loro e non ciò che teneva *dentro* di loro: una password e, su alcuni formati, i permessi e le date originali.
ZIP contiene un'intera cartella, mentre GZ è un singolo flusso compresso. Nomi, cartelle e date restano registrati invece di sparire in un blocco unico.
Non si scarta nulla. GZ e ZIP salvano il contenuto senza perdita: la conversione cambia la confezione, non la qualità, e si può ripetere senza che i danni si accumulino.
ZIP è un formato di lavoro e GZ è un formato finito. Torna testo modificabile invece di un'immagine della pagina, che di solito è il motivo della conversione e insieme il suo limite.
Quello che questa pagina afferma su GZ e ZIP si può verificare, e questi sono i documenti che chiudono la questione.