宝塔面板实现定时任务删除 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
相关推荐
码农-阿杰17 小时前
Java 线程等待唤醒机制深度解析:synchronized、ReentrantLock、LockSupport 底层实现对比
java·开发语言·c++
数字化顾问17 小时前
(122页PPT)企业数字化IT架构蓝图规划设计方案(附下载方式)
java·运维·架构
不是光头 强17 小时前
Spring Boot 多线程场景下 i18n 国际化失效问题排查与解决
java·开发语言·springboot
jieyucx17 小时前
Go 语言核心关键字:defer 深度解析与实战避坑
开发语言·后端·golang·defer
星恒随风17 小时前
四天学完前端基础三件套(JavaScript篇)
开发语言·前端·javascript·笔记
勿忘,瞬间17 小时前
Spring IOC and DI
java·spring
小坏讲微服务17 小时前
SpringBoot4.0整合Spring Security+MyBatis Plus完整权限框架实现
java·spring·mybatis·spring security·mybatis plus·springboot4.0
杜子不疼.18 小时前
【 C++ AI 大模型接入 SDK】 - 日志模块
开发语言·javascript·c++
南囝coding18 小时前
Anthropic 内部数百个 Claude Code Skills,他们总结的这套方法值得看
前端·后端
Dxy123931021618 小时前
如何使用jQuery获取一类元素并遍历它们
前端·javascript·jquery