4

我正在尝试使用 python 合并两个 zip 文件。

我让它工作,直到我意识到当涉及到源 zip 文件包含的符号链接时它没有表现出来。由于我在将每个文件添加到新的 zip 文件时对每个文件都使用了 zipfile.read(),因此它正在读取符号链接并创建一个文本文件,而不是符号链接。

当我将它们写入目标 zip 文件时,有谁知道让 python 保留源 zip 文件中的符号链接的方法?

谢谢。

4

1 回答 1

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))
于 2012-10-24T14:52:26.097 回答