Adicionar manualmente arquivos ao tar

1

Eu tenho uma tonelada de arquivos txt.gz em uma rede que quero descomprimir e colocar em um tgz. Eu tenho espaço em disco suficiente para todos os arquivos compactados, mas não descompactados.

A maneira como vejo isso na minha cabeça é

tar -czf output.tgz --daemon
while read filename
do
    wget ftp://server/path/$filename.gz
    gunzip $filename.gz
    tar --add-to-daemon ./$filename
    rm $filename
done
tar --close-daemon

Existe uma maneira de fazer isso?

    
por roguesith 07.08.2012 / 18:28

2 respostas

1

tar não pode modificar arquivos compactados:

$ tar Ajf archive1.tgz archive2.tar
tar: Cannot concatenate compressed archives

$ tar rjf archive1.tgz file.txt
tar: Cannot update compressed archives

Se não houver espaço suficiente para os arquivos descompactados, acho que você não pode fazer isso.

    
por Eric Carvalho 07.08.2012 / 19:22
0

Você poderia facilmente fazer o inverso, manter seus arquivos de texto individualmente compactados e apenas compactá-los sem compactar adicionalmente o arquivo tar. Existem opções para tar para concatenar arquivos ou anexar arquivos a um arquivo, mas você precisaria testar para ver se eles funcionam com um arquivo que já está compactado, já que você não tem espaço para trabalhar com a entrada completa, não compactada .

    
por mtinberg 07.08.2012 / 19:18