繁体   English   中英

如何在 python 中的 zipfile 中创建符号链接

[英]How to create symlink in zipfile in python

我有一个 zip 文件,它作为io.BytesIO缓冲区存储在 memory 中。 在 zip 文件中,我需要创建指向其中一个目录的符号链接。

以下是我到目前为止所尝试的(来自关于 SO 的类似问题),但它并没有像我想要的那样在顶层创建链接。

要创建的链接:root/scale/lib/hypervisor/kvm/pika_3_5

链接名称:'鼠兔'

链接位置:在顶层

现有的压缩文件:数据['egg_buffer']

with zipfile.ZipFile(data['egg_buffer'], 'a') as zip_buffer:
    dest = 'root/scale/lib/hypervisor/kvm/pika_3_5'
    info = zipfile.ZipInfo('pika')
    info.external_attr |= 0120000 << 16L # symlink file type
    info.compress_type = zipfile.ZIP_STORED
    zip_buffer.writestr(info, dest)
data['egg_buffer'].seek(os.SEEK_SET)

实际上,这是在根级别创建一个名为“pika”的文件,但它不是符号链接,而是包含文本 root/scale/lib/hypervisor/esx65/pika_3_5 的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM