
正文
Python实现删除文件夹内规定时间内的文件
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
需求:
在测试程序的时候,程序会大批量的上传文件到规定目录,然后文件根据日期DAY新建文件夹存放,比如28号上传的文件放到 .../28/* 内,29号上传的文件放到 .../29/*内,因为需要测试持续上传3天,而磁盘空间有限,必须删除上传完的文件,确保空间足够。
实现: 自己能用就好,不需要通用。
#-*-coding=gbk -*-
import os
import timedef 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);






