gpt4 book ai didi

python - 如何将 .tar 转换为 .tgz

转载 作者:行者123 更新时间:2023-11-30 23:13:20 26 4
gpt4 key购买 nike

我正在尝试用 python 压缩一些文件。我正在使用子进程,问题是我不知道如何压缩所有文件。这是我所做的:

comand = czf
saveFolder = /home/albert/a.tgz
temporal = /home/albert/test1

subprocess.call(["tar",comand,saveFolder,temporal])

如何添加更多文件?如果我尝试这样做,它会向我发送错误:

subprocess.call(["tar",comand,saveFolder,temporal1,temporal2])

subprocess.call(["tar",comand,saveFolder,temporal + temporal2])

我也尝试过使用:

subprocess.call(["tar",comand,saveFolder,temporal])

然后将所有文件添加到.tar文件中

subprocess.call(["tar","rvf",saveFolder,temporal])

最后一个想法的问题是,我只能对 .tar 文件执行此操作,但对 .gzip 或其他类型的文件则不起作用。

我能做什么?谢谢。

最佳答案

如果你只使用 Python 来完成肮脏的工作怎么办?

从整个目录创建 tar 包(未压缩)

>>> import tarfile
>>> tar = tarfile.open('package.tar', 'w')
>>> tar.add('full/path/of/dir/')
>>> tar.close()

更新 tar 包。

观察到:无法更新压缩包。必须解压、更新、重新压缩

>>> tar = tarfile.open('package.tar', 'w')
>>> tar.add('new_file.txt')
>>> tar.add('new_other_file.txt')
>>> tar.close()

创建 tar 压缩包

>>> tar = tarfile.open('package.tar.gz', 'w:gz')
>>> tar.add('server.db')
>>> tar.add('readme.txt')
>>> tar.close()

关于python - 如何将 .tar 转换为 .tgz,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29375004/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com