Python实现删除文件夹内规定时间内的文件

时间:2023-03-08 20:53:01

需求:
   在测试程序的时候,程序会大批量的上传文件到规定目录,然后文件根据日期DAY新建文件夹存放,比如28号上传的文件放到  .../28/* 内,29号上传的文件放到 .../29/*内,因为需要测试持续上传3天,而磁盘空间有限,必须删除上传完的文件,确保空间足够。

实现:  自己能用就好,不需要通用。

#-*-coding=gbk -*-
import os
import time def listDir(fileDir):
for eachFile in os.listdir(fileDir):
if os.path.isfile(fileDir+"/"+eachFile): #如果是文件,判断最后修改时间,符合条件进行删除
ft = os.stat(fileDir+"/"+eachFile);
ltime = int(ft.st_mtime); #获取文件最后修改时间
#print "文件"+path+"/"+eachFile+"的最后修改时间为"+str(ltime);
ntime = int(time.time())-3600*3; #获取现在时间减去3h
if ltime<=ntime :
print "我要删除文件"+fileDir+"/"+eachFile;
os.remove(fileDir+"/"+eachFile); #删除3小时前的文件 elif os.path.isdir(fileDir+"/"+eachFile) : #如果是文件夹,继续递归
listDir(fileDir+"/"+eachFile); if __name__ == '__main__':
path = "E:/offlinefiles"; #规定目录
while True : #持续
time.sleep(600); #减少资源利用率 600s秒一次
print "3600s wake up";
listDir(path);