压缩指定路径中的目录,压缩完成后删除该目录。
import os
import zipfile
import shutil
dirname = '/opt/backup/seeyon_logs/'
listdir = os.listdir(dirname)
def compress_directory(directory_path, output_path):
with zipfile.ZipFile(output_path, 'w', zipfile.ZIP_DEFLATED) as zipf:
for root, dirs, files in os.walk(directory_path):
for file in files:
file_path = os.path.join(root, file)
zipf.write(file_path, arcname=os.path.relpath(file_path, directory_path))
def delete_directory(path):
if os.path.exists(path):
shutil.rmtree(path)
for file in listdir:
if os.path.isdir(dirname+file):
compress_directory(dirname+file, '/opt/backup/seeyon_logs/%s.zip'%(file))
print('目录压缩成功')
delete_directory(dirname+file)