Se você é um usuário do sistema Linux, aposto que não utiliza extensões em .zip para descompactar arquivos – como comumente utilizam os usuários Windows. Geralmente, os arquivos encontrados são vistos com a extensão .tar.gz.

O que isso significa? Ao encontrar um arquivo do tipo .tar.gz, significa que dois processos foram incluídos ali. O primeiro foi um empacotamento do arquivo no formato .tar e o segundo foi a compactação no formato gzip (.gz).

O tar é capaz de unir todos os arquivos em um só, mas não aplica algoritmos de compactação para que o resultado seja menor. Para isso, utilizaremos então um outro formato: o gzip. A vantagem é que o tar mantém as permissões dos arquivos, assim como links diretos e simbólicos. É muito interessante para o caso de backups, por exemplo.

Para utilizar o tar para compactar arquivos, um diretório chamado Projetos/ [por exemplo] ficaria:

$ tar-czf projetos.tar.gz Projetos/

Diferente do zip, o comando tar não precisa do -r. Ele age de forma diferente do padrão: o -c é create, para indicar a criação de um novo arquivo. O -z é parar compactar com gzip. O -f [file] cria um arquivo compactado.

Para descompactar, basta que você utilize -x de extract ao invés de -c

$ tar -xzf projetos.tar.gz

O comando tar é silencioso por padrão. Se você quer que ele imprima os detalhes do que realizou, utilize o -v [verbose]. Ao comparar o tamanho de um arquivo .zip e .tar.gz percebe-se que o .tar.gz ficou bem menor – mas isso nem sempre acontece.