Python實現刪除文件夾內規定時間內的文件


需求:
   在測試程序的時候,程序會大批量的上傳文件到規定目錄,然后文件根據日期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);
View Code

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM