2012-10-11 13 views
5

¿Cómo agrego un directorio vacío a un archivo tar en python, sin crearlo primero en el disco?agregar el directorio vacío a tarfile

Crear un directorio vacío en mi sistema de archivos local y agregar esto al archivo tar es bastante fácil, pero crea una sobrecarga innecesaria.

Crear uno directamente en el archivo tar, sin embargo parece no trivial. Mis intentos parece:

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 

Respuesta

8

Uso addfile() y cambiar el TarInfo.type a 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

gracias, esto es exactamente lo que quería. – mirk

Cuestiones relacionadas