如何使用Python tarfile包创建filename.TAR.GZ仅限大写

问题描述

我正在将tarfile软件包用于python。

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以外的其他软件包。

解决方法

这是您想要的吗?

apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
  - https://gitlab.com/my-user/k8s-base-cfg.git
patchesStrategicMerge:
  - app-patch.yaml

输出

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 ,则内容如下:

enter image description here