删除指定路径下创建日期超过七天的文件
#
#!/usr/bin/python
#coding: utf-8
#
#filename:deleteFileByTime.py
#author:wzw
#function:删除指定路径下创建日期超过七天的文件
#files = (‘D:\A’,r’D:\test2’) 文件路径 如果是单个路径 则写成files = (‘D:\A’,) 不要少了那个逗号
#测试期间最好把34行的os.remove(path_now)注释掉,以免误删重要文件
import os
import traceback
import time
import datetime
import sys
reload(sys)
sys.setdefaultencoding(‘utf-8’)
def search_dir(sevenDayAgo,path):
try:
output = open(‘delete.log’, ‘a+’)
print ‘path: ‘,path
for x in os.listdir(path):
path_now = os.path.join(path, x)
if os.path.isfile(path_now):
stime = os.path.getctime(path_now) #文件创建时的时间戳
ctime = time.gmtime(stime)
filectime = time.strftime(“%Y-%m-%d %H:%M:%S”, ctime)
if sevenDayAgo>stime and os.path.basename(path_now):
print “文件:{} \t\t\t文件创建日期: {}”.format(path_now, filectime)
content = “filePath {} \t\t\tfileCreateTime: {}\r\n”.format(path_now, filectime)
output.write(content)
#删除查找到的文件
#os.remove(path_now)
elif os.path.isdir(path_now):
search_dir(sevenDayAgo,path_now)
output.close()
except Exception, e:
print traceback.format_exc()
print e
if name == “main“:
#——————-注意——————–
#files是一个元组,如果里面只放一个路径,记得后面加一个逗号 切记! 否则可能会造成严重后果!
files = (r’D:\test2’,) # 文件路径
sevenDayAgo = int(time.mktime((datetime.datetime.now() - datetime.timedelta(days = 7)).timetuple())) #当前时间戳
for path in files:
search_dir(sevenDayAgo,path)