2012-10-11 38 views
5

Làm cách nào để thêm thư mục trống vào tarfile trong python, mà không cần tạo thư mục trên đĩa trước?thêm thư mục trống vào tarfile

Tạo thư mục trống trong hệ thống tệp cục bộ của tôi và thêm thư mục này vào tệp tar đủ dễ dàng, nhưng tạo chi phí không cần thiết.

Tạo một tệp trực tiếp trong tệp tar, tuy nhiên có vẻ không quan trọng. nỗ lực của tôi trông giống như:

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 

Trả lời

8

Sử dụng addfile() và thay đổi 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) 
+0

cảm ơn, đây là chính xác những gì tôi muốn. – mirk

Các vấn đề liên quan