3
我想複製一個tar文件,其中刪除了一些文件(基於它們的名稱和可能的其他屬性,如符號鏈接等)。由於我已經在python中打開了tar文件,所以我想在python中執行此操作。我知道TarFile.getmembers()返回一個TarInfo對象列表,而TarFile.addfile(tarinfo)接受一個TarInfo對象。但是當我把一個餵給另一個時,就會創建一個損壞的tar(沒有錯誤)。將文件從一個tar文件添加到另一個python文件中
import tarfile
oldtar=tarfile.open('/tmp/old.tar',"r")
newtar=tarfile.open('/tmp/new.tar',"w")
for member in oldtar.getmembers():
if not member.name == 'dev/removeme.txt':
newtar.addfile(member)
else:
print "Skipped", member.name
newtar.close()
oldtar.close()
謝謝,這似乎爲我做的。 – user2576471
@ user2576471,[接受答案](http://stackoverflow.com/help/accepted-answer) – falsetru