반응형
import os
import zipfile
def backup_to_zip(folder):
# 폴더내의 파일을 zip 파일로 백업
# 작업디렉토리 이동
os.chdir(folder)
print('Current working directory is ' + os.getcwd())
# zip 파일명 생성
zip_filename = os.path.basename(folder) + '.zip'
print('Creating %s' % zip_filename)
# backup 폴더 생성
os.mkdir('..\\backup')
# backup 폴더에 백업파일을 생성
backupzip = zipfile.ZipFile('..\\backup\\' + zip_filename, 'w')
# 작업디렉토리를 순회하면서 백업파일을 생성
# 1. 확장자가 .jpg 파일은 백업하지 않는다.
for foldername, subfolders, filenames in os.walk('.'):
# 현재폴더를 ZIP파일에 추가
backupzip.write(foldername)
# 하위 폴더를 ZIP파일에 추가
for subfolder in subfolders:
backupzip.write(os.path.join(foldername, subfolder))
# 하위 폴더의 파일들을 ZIP파일에 추가
for filename in filenames:
if filename.endswith('.jpg'):
print('skip compressing file: ' + filename)
continue
backupzip.write(os.path.join(foldername, filename))
backupzip.close()
print('backup completed..')
def main():
backup_to_zip('C:\\Python\\Edupure\\Teacher\\work-for-python') # 작업 디렉터리
if __name__ == '__main__':
main()
반응형
'Python_Beginer > Study' 카테고리의 다른 글
HRD 수업>파이썬을 이용한 자동화 스크립트 - Ch15 (0) | 2019.08.06 |
---|---|
HRD 수업>파이썬을 이용한 자동화 스크립트 - logging 모듈 (0) | 2019.08.06 |
HRD 수업>파이썬을 이용한 자동화 스크립트 - Ch14 (0) | 2019.08.06 |
HRD 수업>파이썬을 이용한 자동화 스크립트 - 연습문제 12 (0) | 2019.08.01 |
HRD 수업>파이썬을 이용한 자동화 스크립트 - Ch13 (0) | 2019.08.01 |