Я создаю файл tar, а затем я распаковываю файл tar. Итак, я получаю файл .tgz, и теперь я хочу удалить предыдущий файл tar.
${gzipExe} -f --rsyncable $tarname.TAR --stdout >> $tarname.TGZ
Обычно я одновременно архивирую файл, используя параметр 'z' с командой tar:
tar czvf allmyfiles.tar.gz *
Приведенная выше команда создает новый архивный файл с именем allmyfiles.tar.gz, который содержит все файлы в текущей папке, и архивирует его.
В противном случае просто удалите файл .tar с помощью следующей команды:
$rm $tarname.TAR
Обратите внимание, что .tar.gz используется чаще, чем .tgz.
У вас есть несколько вариантов. Предполагая, что вам нужна эта опция --rsyncable
:
REM I think you are on Windows so... set GZIP=--rsyncable tar czf file.tar.gz files
tar c files | gzip --rsyncable > file.tar.gz
tar -cf file.tar files gzip -f --rsyncable file.tar
Если вы просто запустите gzip file.tar
вместо gzip --stdout file.tar > file.tar.gz
gzip удалит файл tar для вас.
Также обратите внимание, что использование gzip --stdout file.tar >> file.tar.gz
как и в вашем вопросе, фактически добавит новое содержимое gziped в file.tar.gz, что, вероятно, не то, что вам нужно.