2012-10-22 20 views
4

我試圖合併使用python兩個壓縮文件的兩個zip文件。合併使用python

我有它的工作,直到我意識到它,當它來到了源zip文件包含的符號鏈接並沒有表現。由於我是在當我將它添加到新的zip文件,每個文件使用zipfile.read(),它是閱讀的符號鏈接,並創建一個文本文件,而不是一個符號鏈接。

有誰知道一個辦法讓蟒蛇當我將其寫入到目標zip文件從源zip文件保存符號鏈接的?

謝謝。

+1

相關:http://www.mail-archive.com/[email protected]/msg34223.html – Bakuriu

+2

當你說合並這兩個zip文件,你的意思是zip文件A的內容和zip文件B的不同內容到一個單一的zip文件?當兩個文件存在同一個文件時會發生什麼?需要合併兩個zip文件的更廣泛的目標是什麼? –

回答

2

這是應該怎麼做:

 if os.path.islink(filePath): 
      attr = zipfile.ZipInfo(filePath) 
      attr.create_system = 3 # 3 for unix, 0 for windoze 
      attr.external_attr = 2716663808L # to include file as a symlink 
      newZip.writestr(attr, os.readlink(filePath))