6

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

1 回答 1

10

使用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)
于 2012-10-11T16:46:45.560 回答