如何使用Python创build完整的压缩tar文件?

如何在Python中使用压缩来创build.tar.gz文件?

要为整个目录树构build一个.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)) 
 import tarfile tar = tarfile.open("sample.tar.gz", "w:gz") for name in ["file1", "file2", "file3"]: tar.add(name) tar.close() 

如果要创buildtar.bz2压缩文件,只需用“w:bz2”replace文件扩展名为“.tar.bz2”和“w:gz”即可。

您可以使用mode='w:gz'调用tarfile.open ,意思是“打开gzip压缩写入”。

你可能想用.tar.gz结束文件名( openname参数),但是这不会影响压缩function。

顺便说一句,你通常使用'w:bz2'模式获得更好的压缩效果,就像tar通常可以用bzip2压缩得比使用bzip2压缩更好。