[英]What's the option of tar that corresponds to the `arcname` option in Python `tarfile` module?
[英]Use python tarfile add without normpath being applied to arcname
我正在使用python的tarfile库来创建gzip压缩的tar文件。
由于我无法控制,tar文件需要具有绝对路径名。 (我知道这不是正常的做法。)
当我打电话
tarobject.add("/foo/xx1", "/bar/xx1")
arcname参数“ / bar / xx1”通过os.path.normpath()运行,并转换为“ bar / xx1”
如何避免这种情况,并根据需要以“ / bar / xx1”结尾?
我已经读到可以在某个地方替换normpath,但是我对Python还是很陌生,我不确定如何做到这一点或会带来更广泛的影响。
编辑
看完这个问题后,我仔细看了一下tarinfo对象,这似乎可行:
my_tarinfo = tarobject.gettarinfo("/foo/xx1")
my_tarinfo.name = "/bar/xx1"
tarobject.addfile(my_tarinfo, file("/foo/xx1"))
你真的很奇怪 您需要将/usr/lib64/python/tarfile.py
复制到PYTHONPATH中的目录中。 然后,您可以修改此文件。 但是您需要将自己的tarfile模块与代码捆绑在一起。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.