2017-02-13 1 views
1

zip 파일을/tmp 디렉토리에 저장하려고합니다.제어 Zipfile 디렉토리 구조

import zipfile 
log.info('ZippingXMLFile...') 

myfilepath = '/tmp/%s' % self.file_name 
myzippath = myfilepath.replace('.xml', '.zip') 

zipfile.ZipFile(myzippath, 'w', zipfile.ZIP_DEFLATED).write(myfilepath) 

이는 /tmp 디렉토리에 zip 파일을 저장 : 여기 내가 가지고있는 코드입니다. 그러나 압축을 풀려면 압축 파일을 두 번 클릭합니다. 새 tmp 디렉토리에 zip 파일을 만듭니다. tmp 디렉토리에 zip 파일을 /tmp/file.xml 대신 file.xml으로 저장하려면 어떻게해야합니까?

아니면 subprocess 모듈을 사용하면 더 쉬운 방법일까요? zip 파일을 생성 한 다음 마친 밖으로 다시 변경하기 전에

답변

0

당신은 /tmp에 디렉토리를 변경할 수 있습니다 :

import zipfile 
import os 

log.info('ZippingXMLFile...') 

saved = os.getcwd() 
os.chdir('/tmp') 
myzippath = self.file_name.replace('.xml', '.zip') 
zipfile.ZipFile(myzippath, 'w', zipfile.ZIP_DEFLATED).write(self.file_name) 
os.chdir(saved)