如何在Python中使用压缩来创建.tar.gz文件?如何使用Python创建完整压缩的tar文件?
61
A
回答
100
要建立一个.tar.gz
(又名.tgz
)对整个目录树:
import tarfile
def make_tarfile(output_filename, source_dir):
with tarfile.open(output_filename, "w:gz") as tar:
tar.add(source_dir, arcname=os.path.basename(source_dir))
72
import tarfile
tar = tarfile.open("sample.tar.gz", "w:gz")
for name in ["file1", "file2", "file3"]:
tar.add(name)
tar.close()
如果你想创建一个TAR.BZ2压缩文件,只需用” .tar.bz2" 格式并替换文件的扩展名 “W:GZ” 与 “W:BZ2”。
+1
你应该真的在Python中使用'tarfile.open(..',而不是手动调用'open'和'close',打开常规文件时也是如此 – Sheljohn 2017-03-13 17:15:57
28
您可以拨打tarfile.open与mode='w:gz'
,意思是“打开gzip压缩写入”。
您可能需要结合使用.tar.gz
的文件名(name
参数为open
),但不影响压缩功能。
顺便说一句,你平时用的'w:bz2'
模式得到更好的压缩,就像tar
平时甚至可以更好地与bzip2
压缩比它可以与gzip
压缩。
+4
只需简单的说明bzip2-压缩的压缩包应以“.tar.bz2”结尾 – 2010-01-09 05:23:16
相关问题
- 1. 如何使用compress/gzip和archive/tar创建压缩的tar归档文件?
- 2. 使用C#解压缩tar文件
- 3. 使用C#解压缩tar/BZ2文件
- 4. 的Python subprocess.call tar命令后使用未压缩的文件
- 5. C#使用.tar压缩
- 6. gzipping一组目录并创建一个tar压缩文件
- 7. 如何使用python压缩Excel文件?
- 8. 如何从许多tar文件解压缩特定文件并将其压缩?
- 9. 使用BAT文件将文件解压缩到完整路径
- 10. 创建和压缩文件
- 11. 如何压缩在Python程序中新创建的文件夹?
- 12. 当创建tar文件时,整个路径被创建为tar文件
- 13. Maya Python创建并使用压缩包?
- 14. tar命令 - 压缩无文件夹
- 15. 如何使用Gzip(Deflate)创建高度压缩的文件?
- 16. 如何使用SevenZipSharp创建压缩的SFX文件?
- 17. 如何解压缩使用ByteArray.compress创建的zlib文件?
- 18. tar文件没有完全解压
- 19. 无法解压使用zipfile构建的压缩文件(Python)
- 20. 如何列出Java中压缩的tar文件的内容
- 21. 如何压缩没有目录的tar.gz中的tar文件?
- 22. Node.js:指定要使用zlib + tar解压缩的文件
- 23. 如何创建和读取压缩文件以及我应该使用哪种压缩格式的python?
- 24. 如何使用PHP和目标目录创建压缩文件?
- 25. 如何使用Python解压缩zip文件内容(使用压缩格式)
- 26. IIS 7.5压缩会创建压缩文件,但会返回非压缩文件
- 27. 不能解压一个完整的目录使用tar -cvpzf
- 28. 如何创建一个循环,将压缩文件夹,然后压缩文件夹“x”的时间量,Python 3.4?
- 29. 使用iOS-libarchive库解压缩.tar文件
- 30. 在MATLAB中使用tar压缩文件夹
焦油不压缩的数据,它只是包中的文件一起。这是gzip做的实际压缩。 – 2010-01-09 05:19:50