Добавьте файлы вручную в 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
Есть ли способ сделать это?
2 ответа
tar не может изменить сжатые файлы:
$ tar Ajf archive1.tgz archive2.tar
tar: Cannot concatenate compressed archives
$ tar rjf archive1.tgz file.txt
tar: Cannot update compressed archives
Если для несжатых файлов недостаточно места, я думаю, вы не сможете этого сделать.
Вы можете легко сделать это наоборот, сохранить свои текстовые файлы по отдельности в сжатом виде и просто скопировать их без дополнительного сжатия файла tar. У tar есть опции для объединения архивов или добавления файлов в архив, но вам нужно проверить, работают ли они с архивом, который уже сжат, поскольку у вас нет места для работы с полным, несжатым вводом.,