De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Rubens Queiroz de Almeida
Data de Publicação: 18 de outubro de 2012
Diversos sites distribuem arquivos compactados por duas razões principais: para economizar espaço de armazenamento e também para reduzir o uso de banda de internet.
Sistemas GNU/Linux, tradicionalmente, empregam o formato gzip
, que é
uma abreviação de GNU zip. Mas mesmo em sistemas GNU/Linux você encontra
aplicativos para compactar e descompactar arquivos de formatos mais populares
em outros ambientes, como rar
e zip
.
O suporte ao formato gzip é nativo, ou seja, todo sistema GNU/Linux, por padrão, já instala os aplicativos que compactam e descompactam arquivos neste formato. Já para o formato rar e zip você precisa instar os aplicativos.
Relacionamos a seguir os comandos a serem seguidos para descompactar os arquivos.
Sufixo | Comando |
---|---|
zip | unzip arquivo.zip |
rar | unrar x arquivo.rar |
tar.gz | tar xvzf arquivo.tar.gz |
tar.bz2 | tar xvjf arquivo.tar.bz2 |
tgz | tar xvzf arquivo.tgz |
gz | gunzip arquivo.gz |
bz2 | bunzip2 arquivo.bz2 |
O comando tar
, cria um arquivo único que pode compreender diversos outros
arquivos. Então um arquivo no formato tar.gz
é criado em dois passos:
primeiro é criado um arquivo compreendendo um grupo de outros arquivos e
em seguida o arquivo é compactado com o comando gzip
ou bzip2
. O
algoritmo usado no comando bzip2
é mais eficiente que os algoritmos
dos comandos zip
e gzip
, resultando em arquivos menores. O formato
tgz
na verdade é a mesma coisa do formato tar.gz
. É uma abreviação.
Para expandir arquivos tar.gz
eu uso sempre a diretiva -v
, de
verbose, pois eu gosto de ver o que está acontecendo :-)
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários (1)
Algumas dicas sobre a dica de hoje.
Nas últimas versões do GNU tar(1) não é mais necessário especificar os parâmetro "z" ou "j" para descompactar um ".tar.gz" ou um ".tar.bz2". O próprio programa determina o tipo de compactação usada e aplica. Os parâmetros só são necessários para a criação do arquivo tar compactado.
Mais uma. Um arquivo tar(1), como está no texto, pode conter vários arquivos e até mesmo diretórios. É comum a prática de se colocar o que se quer arquivar em um diretório e simplesmente arquivar o diretório com todo o seu conteúdo. A vantagem disso é que ao expandir o arquivo tar(1) será criado um diretório com todo o conteúdo agrupado lá, sem misturar com outros arquivos que possam estar lá. Imagine abrir um arquivo tar(1) e misturar dezenas de outros arquivos com os que já estão no seu $HOME.
Por outro lado, não é raro um arquivo tar(1) não ter um "diretório raiz" como descrito acima. Como saber se essa estrutura existe ou não? Na dúvida, em lugar do parâmetro "x" para extrair o conteúdo, use o parâmetro "t" para listar apenas. Dessa forma pode-se saber com antecedência como está a estrutura do arquivo.