如何在python中的tarfile中添加一个空目录,而不先在磁盘上创建它?
在我的本地文件系统中创建一个空目录,并将其添加到tar文件很容易,但会产生不必要的开销。
直接在tar文件中创建一个,但似乎并不重要。 我的尝试看起来像:
import tarfile
with tarfile.open("test.tbz2",mode='w:bz2') as t:
t.add("conf_dir") # does not work
t.add(tarfile.TarInfo("conf_dir")) # does not work
答案 0 :(得分:9)
使用addfile()并将TarInfo.type更改为tarfile.DIRTYPE
import tarfile
with tarfile.open("test.tbz2",mode='w:bz2') as f:
t = tarfile.TarInfo('mydir')
t.type = tarfile.DIRTYPE
f.addfile(t)