宝塔面板实现定时任务删除 logs文件 加条件删除 只删除一个月前的日志

我们在开发中难免用到了日志功能,随着日志越来越多导致占用我们的内存 下面是一个简单的 使用宝塔面板里面的定时任务来实现删除日志案例

第一步

  1. 首先我的日志文件目录 都在log文件夹里面, 每个月生成一个日志文件夹 文件夹命名是年月来命名的

第二步

  1. 我们先获取当前文件夹的路径 右键属性 复制文件路径 待会儿我们就要删除这个文件下的 日志

第三步

进入到计划任务 点击添加任务 默认选择 shell脚本

第四步脚本内容

我这里的shell脚本是 删除当前月以前的时间数据

复制代码
#!/bin/bash

# 获取当前年份和月份
YEAR=$(date +%Y)
MONTH=$(date +%m)

# 遍历runtime/los目录下的所有文件夹
for folder in $(ls -d /www/wwwroot/test.com/runtime/log/*/); do
    # 获取文件夹名称中的年份和月份
    folder_year=$(basename "$folder" | cut -c 1-4)
    folder_month=$(basename "$folder" | cut -c 5-6)

    # 比较文件夹年份和月份是否小于当前年份和月份
    if [[ "$folder_year$folder_month" < "$YEAR$MONTH" ]]; then
        echo "Deleting $folder"
        rm -rf "$folder"
    fi
done
相关推荐
消失的旧时光-194313 分钟前
Android USB 通信开发
android·java
梁云亮13 分钟前
Spring Boot + Thymeleaf 防重复提交
spring boot·防抖·防重复提交
惊鸿一博15 分钟前
java_网络服务相关_gateway_nacos_feign区别联系
java·开发语言·gateway
花月C1 小时前
Mysql-定时删除数据库中的验证码
数据库·后端·mysql·spring
Dontla3 小时前
为什么React列表项需要key?(React key)(稳定的唯一标识key有助于React虚拟DOM优化重绘大型列表)
javascript·react.js·ecmascript
德育处主任Pro6 小时前
『React』Fragment的用法及简写形式
前端·javascript·react.js
CodeBlossom6 小时前
javaweb -html -CSS
前端·javascript·html
CodeCraft Studio6 小时前
【案例分享】如何借助JS UI组件库DHTMLX Suite构建高效物联网IIoT平台
javascript·物联网·ui
朝新_6 小时前
【多线程初阶】阻塞队列 & 生产者消费者模型
java·开发语言·javaee
立莹Sir6 小时前
Calendar类日期设置进位问题
java·开发语言