压缩.log 文件为zip后删除原文件
需要注意:本人作为小白,该脚本需要和.log在一起,后面有时间需要改正。
#!/usr/local/python/bin/python #-*-coding=utf8 -*- import time import os import sys import zipfile N = 7 #设置删除多少天前的文件 def zip(srcpath): for folder,sumfolder,files in os.walk(srcpath): for file in files: lastmodifytime = os.stat(os.path.join(srcpath,file)).st_mtime endfiletime = time.time() - 3600 * 24 * N #设置删除多久之前的文件 if endfiletime > lastmodifytime: if file.endswith('.log'): fantasy_zip=zipfile.ZipFile(file + ".zip",'w') fantasy_zip.write(os.path.join(folder,file),os.path.relpath(os.path.join(folder,file),srcpath),compress_type = zipfile.ZIP_DEFLATED) fantasy_zip.close() os.remove(file) print "删除文件 %s 成功" % filename if __name__ == '__main__': srcpath = r'/home/xiaodao/logs' zip(srcpath)