首页 > 解决方案 > 如何使用 Python tarfile 包创建 filename.TAR.GZ(ext. 仅大写)

问题描述

我正在使用tarfilepython 包。

Tar = tarfile.open("filename.tar.gz" mode='w:gz')

注意: tarfile.open("filename.**TAR.GZ**" mode='w:gz') 正在创建两个级别的压缩。不知道这是否是包中的错误

它正在创造"filename.tar.gz";但是,对于 Unix 约束,我们需要"filename.**TAR.GZ**"(请注意扩展名是大写的。)

你能帮我创作filename.TAR.GZ吗?tarfile除了满足我的需要之外,我还可以使用其他软件包。

标签: python-3.xtarfile

解决方案


这是你想要的吗?

import tarfile

file_to_add = "data.csv"
tar_archive = "file.TAR.GZ"

out = tarfile.open(tar_archive, "w:gz")
try:
    print(f"Adding {file_to_add}")
    out.add(file_to_add)
finally:
    print(f"Closing tar archive: {tar_archive}")
    out.close()

print(f"Contents of archive: {tar_archive}")
t = tarfile.open(tar_archive)
for member in t.getmembers():
    print(member.name)

输出

Adding data.csv
Closing tar archive: file.TAR.GZ
Contents of archive: file.TAR.GZ
data.csv

如果我ls在工作目录上做,这就是那里的内容:

在此处输入图像描述


推荐阅读