Добавьте файлы вручную в tar

У меня есть тонна файлов txt.gz в сети, которую я хочу распаковать и поместить в tgz. У меня достаточно места на диске для всех сжатых файлов, но не в несжатом виде.

Я вижу это в своей голове

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

Есть ли способ сделать это?

1
задан 7 August 2012 в 20:28

2 ответа

Вы можете легко сделать это наоборот, сохранить свои текстовые файлы по отдельности в сжатом виде и просто скопировать их без дополнительного сжатия файла tar. У tar есть опции для объединения архивов или добавления файлов в архив, но вам нужно проверить, работают ли они с архивом, который уже сжат, поскольку у вас нет места для работы с полным, несжатым вводом. .

0
ответ дан 7 August 2012 в 20:28

tar не может изменять сжатые файлы:

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

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

Если недостаточно места для несжатых файлов, я думаю, что вы не можете сделать это.

0
ответ дан 7 August 2012 в 20:28

Другие вопросы по тегам:

Похожие вопросы: