python-3.x - 如何使用 Python tarfile 包创建 filename.TAR.GZ(ext. 仅大写)
问题描述
我正在使用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
除了满足我的需要之外,我还可以使用其他软件包。
解决方案
这是你想要的吗?
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
在工作目录上做,这就是那里的内容:
推荐阅读
- generics - Why do I have to destruct and reconstruct the non-generic variant of a generic enum when mapping from one generic to another?
- python - No module named numpy but requirements are already satisfied (Anaconda)
- node.js - How to display the data from MongoDB in Reactjs?
- css - 为什么没有应用矩形上的样式?
- oracle - where is the Azure runtime Integration has to be installed?
- python - 如何在 sqlalchemy 中获得循环关系?
- junit5 - Does JUnit5 test result contains "Error", if it does, how to mark a test as "Error"?
- php - phpunit: Avoid printing very long output
- javascript - 如何修复 validateDOMNesting(...): 不能作为 . 并且列表中的每个孩子都应该有一个唯一的“关键”道具
- r - 通过基于当前日期和前一个日期的子集从数据框中提取值