Cookies para estatística e publicidade
Usamos cookies de estatística e de publicidade, ambos enviados ao Google. Recusar não muda nada do que você vê.Ler a página de privacidade
Aqui você converte GZ para 7Z de graça e sem conta: solte o arquivo acima e em poucos segundos o resultado está pronto para baixar. O arquivo viaja criptografado até o nosso servidor, é convertido lá e é apagado assim que o trabalho termina.
Até 100 arquivos de uma vez. Formatos misturados não são problema.
Eles são convertidos um após o outro e baixados juntos em um ZIP.
GZ para 7Z
O momento que traz a maioria das pessoas até aqui é específico. Um arquivo chega chamado algo como `projeto-4.2.tar.gz`, o Windows não oferece um jeito óbvio de abrir, um descompactador é instalado, e o resultado é um único arquivo chamado `projeto-4.2.tar` — que precisa ser descompactado de novo. Nada está quebrado; é simplesmente assim que o formato funciona. Mas é um encaixe ruim para um computador onde a expectativa é que um arquivo compactado seja uma coisa só para olhar dentro.
O lado Unix dessa troca não tem esse problema, porque um único comando desfaz as duas camadas de uma vez. Esta conversão existe para o outro lado dessa troca: o analista, o desenvolvedor no Windows, a pessoa que recebeu uma exportação de servidor e precisa achar um arquivo de configuração nela. Um 7Z é um arquivo só com um índice de verdade, e todo descompactador do Windows mostra ele como uma pasta que dá para entrar.
O TAR, de 1979, é um empacotador sem compressor: escreve os itens um depois do outro com um cabeçalho na frente de cada um registrando nome, caminho, tamanho e datas. Ele não deixa nada menor. O GZ, definido em 1996, é o oposto: comprime um único fluxo e não tem campo para nome, caminho nem um segundo item.
Nenhum dos dois é deficiente. Foram desenhados para serem compostos, e é por isso que `.tar.gz` é a convenção mais antiga e duradoura do mundo Unix. Um 7Z, de 1999, faz os dois trabalhos num formato só — tem um índice de entradas com nomes, caminhos e soma de verificação por item, e comprime tudo com LZMA2. É essa a diferença que esta conversão está comprando, e é uma diferença estrutural, não uma questão de um formato ser melhor.
O fluxo gzip é descompactado primeiro, o que sempre produz uma coisa só, porque é tudo o que um fluxo gzip pode carregar. Se essa coisa for um TAR, ele é desempacotado em seguida e os arquivos dentro dele viram os itens do 7Z. Se for um arquivo comum, ele é mantido como está e vira o único item.
O desempacotamento interno é feito forçando o tipo tar em vez de confiar no nome do arquivo — um detalhe que já foi um bug real antes de virar uma nota de design. O gzip guarda o nome original no cabeçalho, então um tarball interno vindo de um GZ chega com o nome certo e uma checagem por nome o encontra; mas outros formatos de compressão não guardam nome nenhum, e a mesma checagem passaria batido. O sintoma seria um arquivo contendo um único item opaco em vez dos trinta que entraram.
A janela de busca é o argumento inteiro. O gzip comprime dentro de 32 KB de histórico, então um cabeçalho de licença que aparece em duzentos arquivos-fonte é comprimido duzentas vezes do zero. O 7Z usa LZMA2 com um dicionário de até 64 MB, grande o suficiente para cobrir o arquivo inteiro na maioria dos casos, então a segunda ocorrência de qualquer coisa custa quase nada.
É também por isso que a economia é imprevisível em vez de uma porcentagem fixa. Uma árvore de código-fonte ou um conjunto de arquivos de configuração encolhe bastante. Um tarball de JPEGs ou MP3s quase não se move, porque a redundância dentro desses arquivos já foi removida pelos próprios codecs antes de entrar no arquivo. Olhe o número no seu próprio arquivo em vez de qualquer número citado numa página como esta.
Este é o benefício prático que as pessoas realmente sentem, e é separado do tamanho. Um 7Z registra suas entradas no próprio arquivo, então um descompactador consegue mostrar todo caminho e tamanho de um arquivo de 500 MB no tempo que leva para ler poucos kilobytes do fim dele. É por isso que clicar duas vezes num 7Z abre uma janela na hora.
Um tarball compactado não consegue fazer isso de jeito nenhum. Os nomes moram dentro do TAR, o TAR está dentro do fluxo comprimido, e o fluxo precisa ser descompactado do início para alcançá-los — não existe índice e não há onde colocar um. Para um arquivo que você pretende buscar em vez de consumir por inteiro, essa única propriedade vale mais do que a taxa de compressão.
Um cabeçalho TAR registra o dono, o grupo, a permissão e a data de modificação de cada item, e para muitos tarballs isso não é incidental — um pacote de lançamento com um script de build dentro depende do script chegar executável. A nota do nosso catálogo sobre este par é deliberadamente sem meias palavras: os arquivos saem byte a byte, e o que o contêiner antigo guardava sobre eles, e não neles, é o que pode não sobreviver.
Então se o tarball é um artefato de implantação ou algo que vai ser desempacotado numa máquina Unix e executado, converter para 7Z é uma mudança que você precisa testar, não presumir. Se é um conjunto de documentos, um banco de dados ou uma árvore de código que você vai ler no Windows, nada disso importa e a conversão não custa nada que você estivesse usando.
Suporte irregular é o ponto fraco conhecido do 7Z, e é o contrapeso honesto para tudo acima. O Explorador do Windows abre um ZIP sem nada instalado e não abre um 7Z; o Finder do macOS é igual. 7-Zip, Keka e PeaZip lidam com ele, mas todos precisam ser instalados primeiro.
Isso torna o 7Z um formato excelente para um arquivo que você vai guardar e ruim para um que você vai enviar. Se o ponto desta conversão é facilitar seu próprio trabalho na sua máquina, é o destino certo. Se você está convertendo para encaminhar o resultado a outra pessoa, ZIP é a resposta — é o único formato de arquivo compactado que abre em qualquer lugar sem uma conversa sobre qual ferramenta instalar.
Esta conversão roda no nosso servidor, não no seu navegador. A maioria das ferramentas deste site mantém o arquivo no seu aparelho e diz isso claramente; arquivos compactados são uma das exceções, porque o trabalho precisa do 7-Zip como programa de verdade. O arquivo viaja por uma conexão criptografada até um contêiner sem acesso próprio à internet.
A tarefa recebe um diretório de trabalho num sistema de arquivos baseado em memória, apagado assim que a tarefa termina seja qual for o resultado, e é encerrada depois de sessenta segundos em vez de deixada rodando indefinidamente. Antes de extrair qualquer coisa, o arquivo é consultado sobre quanto ele diz que vai expandir, e um total declarado acima de 2 GB é recusado.
Abra o resultado e compare a lista de entradas antes de apagar qualquer coisa. A contagem e os caminhos são o que importa: este é um reempacotamento sem perdas, então uma diferença nunca é um arquivo corrompido, é uma surpresa estrutural — mais frequentemente uma pasta raiz presente num e ausente no outro. O arquivo aqui é empacotado de dentro do diretório extraído, então seus arquivos ficam na raiz do 7Z em vez de dentro de uma pasta envolvente.
O 7-Zip tem um comando de teste que verifica cada entrada contra sua soma de verificação sem escrever nada em disco, e vale trinta segundos em qualquer arquivo que você pretenda guardar. O caso que merece mais atenção é um `.gz` que continha um único arquivo: o 7Z vai conter esse arquivo só, corretamente, e se você esperava uma pasta, o original nunca foi um tarball.
| GZ | 7Z | |
|---|---|---|
| Nome completo | Arquivo Gzip | Arquivo 7-Zip |
| Extensão do arquivo | .gz, .tgz | .7z |
| Tipo de mídia | application/gzip | application/x-7z-compressed |
| Compressão | Sem perdas — nada é descartado | Sem perdas — nada é descartado |
| Publicado pela primeira vez | 1992 | 1999 |
| Especificação | RFC 1952 | — |
| Licença | Padrão aberto | Padrão aberto |
| Situação hoje | Atual | Atual |
| Abre no navegador | Nenhum navegador | Nenhum navegador |
| Considerado no lugar | BZ2, XZ, ZIP | ZIP, XZ |
Nada é descartado. GZ e 7Z guardam o conteúdo sem perda, então a conversão troca a embalagem e não a qualidade — e pode ser repetida sem que o estrago se acumule.
7Z é formato de trabalho e GZ é formato pronto. Volta texto editável em vez de uma imagem da página, o que costuma ser o motivo da conversão e também o seu limite.
7Z comporta um diretório inteiro, enquanto GZ é um único fluxo comprimido. Nomes, pastas e datas ficam registrados em vez de sumirem num bloco só.
7-Zip e Keka leem tanto GZ quanto 7Z, então dá para comparar o resultado com o original sem um segundo programa.
7Z trabalha com 16 MB de cada vez, contra 32 KB de GZ: é dentro desse intervalo que uma repetição precisa caber para poder ser comprimida. É daí que vem a diferença de compressão e também o tempo a mais.
GZ foi publicado em 1992. Está descrito em RFC 1952, e vale conhecer se o arquivo precisa sobreviver à ferramenta que o escreveu.
7Z e de 1999. 7-Zip, Keka e PeaZip leem o formato.
É: esta conversão precisa de um software que não roda num navegador. O arquivo viaja criptografado até o nosso servidor, é apagado assim que o trabalho termina e o resultado, depois de 60 minutos. O trabalho é feito por 7-Zip, o compactador, na sua forma de linha de comando.
É, até 100 conversões por dia para arquivos de até 25 MB. Esse único limite existe porque esta conversão roda num servidor que nós pagamos. No resto aqui não há nada limitado, e marca d’água não existe em caso nenhum. O limite existe porque 7-Zip precisa de uma máquina nossa para rodar.
Não. 7Z guarda o mesmo conteúdo sem jogar nada fora: o resultado é idêntico em qualidade ao original. Os arquivos saem byte a byte iguais. O que não sobrevive é o que o contêiner sabia *sobre* eles e não o que havia *dentro* deles: uma senha e, em alguns formatos, as permissões e as datas originais.
7Z comporta um diretório inteiro, enquanto GZ é um único fluxo comprimido. Nomes, pastas e datas ficam registrados em vez de sumirem num bloco só.
Nada é descartado. GZ e 7Z guardam o conteúdo sem perda, então a conversão troca a embalagem e não a qualidade — e pode ser repetida sem que o estrago se acumule.
7Z é formato de trabalho e GZ é formato pronto. Volta texto editável em vez de uma imagem da página, o que costuma ser o motivo da conversão e também o seu limite.