Я использую библиотеку tar-файлов python для создания tar-файла в формате gzip.
Файл tar должен иметь абсолютные имена путей по причинам, которые я не могу контролировать.(Я знаю, что это не нормальная практика.)
Когда я вызываю
tarobject.add("/foo/xx1", "/bar/xx1")
аргумент имени дуги "/ bar / xx1" запускается через os.path.normpath () и преобразован в "bar / xx1"
Как мне избежать этого и получить "/ bar / xx1", как мне требуется?
Я читал, что могу где-нибудь заменить normpath, но я довольно плохо знаком с Python и не уверен, как это сделать или каковы будут более широкие последствия.
edit
Посмотрев на этот вопрос Я более внимательно посмотрел на объект tarinfo, и, похоже, это работает:
my_tarinfo = tarobject.gettarinfo("/foo/xx1")
my_tarinfo.name = "/bar/xx1"
tarobject.addfile(my_tarinfo, file("/foo/xx1"))