python 压缩文件为zip后删除原文件


压缩.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') or file.endswith('.txt')  or file.startswith('app.log'): #处理后缀为.log和.txt 的文件,或者文件名开头为app.log 的文件
	               fantasy_zip=zipfile.ZipFile(file + ".zip",'w',allowZip64 = True)  #对大于4G的文件也可以操作
                   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)

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM