1.进入脚本所在路径
cd /opt/TongWeb7.0/bin
2.执行脚本
python3 cleanCacheFiles.py "2023-10-10 10:10" "2024-10-10 10:10"
说明:第一个时间为开始时间,第二个时间为结束时间。 可以只输入开始时间,那么结束时间为执行脚本的当前时间。 双引号不能省略,因为日期和时间中间有空格会识别为四个参数。Python脚本内容:
import os
import time
import shutil
import sys
import datetime
if len(sys.argv) <= 3 and len(sys.argv) > 1:
starttime = sys.argv[1]
try:
endtime = sys.argv[2]
except:
endtime = datetime.datetime.now().strftime("%Y-%m-%d %H:%M")
#检测路径
file_path = '/root/logs/'
#将开始结束时间转换为时间戳
try:
t0 = time.mktime(time.strptime(starttime, "%Y-%m-%d %H:%M"))
t1 = time.mktime(time.strptime(endtime, "%Y-%m-%d %H:%M"))
except:
print ('Error:输入的时间格式不匹配!')
sys.exit()
if os.path.exists(file_path):
#获取顶级目录里的二级目录
for dir in os.listdir(file_path):
#获取二级目录里的目录
for subdir in os.listdir(file_path+dir):
fullpath=file_path+dir+'/'+subdir
#计算时间戳是否在指定范围内
if os.path.getmtime(fullpath) >= t0 and os.path.getmtime(fullpath) <= t1:
#如果在指定范围内就删除目录
try:
shutil.rmtree(fullpath)
print ('正在删除'+fullpath+'!')
except:
print ('Error:'+fullpath+'目录删除失败!')
print ('执行结束!')
else:
print ('Error:根目录不存在!')
else:
print ('请输入开始时间及结束时间,或者只输入开始时间!')