você está aqui: Home  → Arquivo de Mensagens

Ebook Gratuito: Dá para fazer em Shell?, com o Prof. Julio Neves

Download e extração de arquivos tar, zip, rar, etc.

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 30 de setembro de 2015

É possível fazer o download e a extração imediata de arquivos nos formatos tar, tar.gz, tar.bz2 diretamente, sem a necessidade de se salvar os arquivos no disco local, economizando espaço em disco e processamento.

Seguem alguns exemplos:

$ wget http://example.com/archive.tar -O - | tar -x
$ wget http://example.com/archive.tar.gz -O - | tar -xz
$ wget http://example.com/archive.tar.bz2 -O - | tar -xj

A diretiva -O indica que o comando wget deve salvar o arquivo na saída padrão, que por sua vez, é redirecionada para um pipe para o comando tar. Desta forma, o arquivo, ao invés de ser gravado em disco, é automaticamente expandido pelo comando tar.

Podemos fazer o mesmo com o comando curl:

$ curl http://example.com/archive.tar | tar -x
$ curl http://example.com/archive.tar.gz | tar -xz
$ curl http://example.com/archive.tar.bz2 | tar -xj

A diretiva -x do comando tar, em ambos os exemplos, faz apenas a extração dos arquivos. As demais diretivas (-z para arquivos compactados com o programa gzip, sufixo .gz e -j para arquivos compactados com o programa bzip2, sufixo .bz2) fazem a descompactação antes da expansão dos arquivos com o comando tar.

Referência: HowTo : Download and Extract (untar) TAR Archive with One Command



Veja a relação completa dos artigos de Rubens Queiroz de Almeida