如何在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

最佳答案

使用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)

关于python - 将空目录添加到tarfile,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12844384/

10-12 21:08