删除文件/文件夹
#强制删除该目录下所有文件和文件夹
import shutil import os src=r"E:\DSX\LX\day6\logs" shutil.rmtree(src) os.mkdir(src)
删除某目录下的空文件,如果是删除非空把==0修改为>1
path=r'e:\DSX\LX\day6\logs\android' files=os.listdir(path) for file in files: filename = os.path.join(path, file) if os.path.getsize(filename) == 0: # 传文件名获取文件大小 os.remove(filename) print(file + " deleted.")
删除5天前的日志文件
#删除5天前的日志 import os,datetime path='E:\DSX\LX\day6\logs' for root,dir,files in os.walk(path): for file in files: day=file.split('.')[0].split('-')[-1]#取出所有时间 now_day=str(datetime.datetime.now().strftime('%Y-%m-%d')).split('-')[-1]#取出当前时间 cz=int(now_day)-int(day) if cz>=5: os.remove(os.path.join(root,file)) print(file,'delete.')
删除5天前的日志文件-优化
#删除5天前的日志 def dda(path):#删除N天前的日志,Delete 5 days ago res = datetime.date.today() # 取当前日期 day = res.strftime('%Y-%m-%d') # 转换成字符串类型 d1 = datetime.datetime.strptime(day, "%Y-%m-%d") # 转换成datetime类型 for root, dir, file in os.walk(path): # 目录遍历 for files in file: date = files.split('.')[0].split('android-')[-1] #取日期字符串类型 d2 = datetime.datetime.strptime(date, "%Y-%m-%d") #转换成时间类型 d3 = d1 - d2 #取差值 d4 = d3.days #差值转换成INT类型 if d4 >= 5: os.remove(os.path.join(root, files)) print(file, 'delete') dda(path='e:\DSX\LX\day6\logs')
移除以.log结尾的文件
import os path=r'E:\Users\admin\PycharmProjects\Interface test' files=os.listdir(path) for i in files: if i.endswith('.log'): os.remove(i)