今天接到電話,有樓下客戶反映,數據有問題,我鏈接到服務器上,發現broke的一個盤符空間滿了,致使,應用在報錯,停下服務,刪除了龐大的日誌文件,服務開啓,一切正常了。python
早就想寫個腳本放在服務器上,今天正好有空,因而扒拉了一下,寫了個Python的小腳本,大牛就不用看了,原理是找出每一個文件的修改時間,若是修改時間不是當天,換句話若是小於今天,那麼咱們就刪掉這個文件。寫的比較粗糙,看下代碼:服務器
#!/usr/bin/env python import os import shutil import time import datetime path1='C:\\BACKUP_Queue_Broker_SHTumor_20130218\\Log\\' #path2='C:\\BACKUP_Other_Broker_SHTumor_20130218\Log\\' #path3='C:\\BACKUP_Schedule_Broker_SHTumor_20130807\\Log\\' def deleteFile(path): today=datetime.datetime.today() file=os.listdir(path) for i in file: mtime=os.stat(path+i).st_mtime #獲得文件的修改時間標記 format='%Y-%m-%d' value=time.localtime(mtime) dt=time.strftime(format,value) dt1=datetime.datetime.strptime(dt,format) #轉換下時間格式 today=(str(today))[:10] dt1=str(dt1)[:10] #print dt1 #print today if dt1 < today : print "Begin To Delete File ", path+i os.remove(path+i) else: pass deleteFile(path1) #deleteFile(path2) #deleteFile(path3)
呵呵,最後瓶裝成一個函數,應爲有多個路徑的文件須要刪除,若是有更好的寫法,請你們不靈賜教。。。ide