Python 批量删除过期文件

工作需要每日备份海关报关资料数据,日积月累文件夹的容量变的越来越大。文件数据每日增加,只需保存两周即可,太旧的数据也无意义。为避免重复劳动,用 Python 写了批处理程序,加入任务计划定期执行就好。

import os
import time
import datetime

class clean:
    def __init__(self, file_url):
        self.file_url = file_url
    def delfile(self):
        f =  list(os.listdir(self.file_url))
        print("%s\n  开始清理...." % self.file_url)
        for i in range(len(f)):
            filedate = os.path.getmtime(self.file_url + f[i])
            time1 = datetime.datetime.fromtimestamp(filedate).strftime('%Y-%m-%d')
            date1 = time.time()
            num1 =(date1 - filedate)/60/60/24 
            # 默认清理天数为 15 天
            if num1 >= 15:  
                try:
                    os.remove(self.file_url + f[i])
                    print(u"删除文件:%s : %s" %  (time1, f[i]))            
                except Exception as e:                                             
                        print(e)                                          
        else:
            print("......")

# 清理目录绝对路径
file1 = clean('I:\\Share\\YB\\')
file1.delfile()
print(u'清理完毕:%s\n' % file1.file_url)