宝塔面板实现定时任务删除 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
相关推荐
Lhappy嘻嘻7 小时前
Java IO|File 文件操作 + 字节流 / 字符流完整笔记 + 递归删除文件实战
java·笔记·php
To_OC7 小时前
手写 AI 编程 Agent 的命令执行工具:我被 child_process 坑出来的实战经验
后端·node.js·agent
胡萝卜术7 小时前
从API调用到手写LRU:力扣146「LRU缓存」的哈希表+双向链表终极进化之路
前端·javascript·面试
科技道人7 小时前
记录 默认置灰/禁用 app ‘Search Engine Selector‘ 的disable按钮
开发语言·前端·javascript
伊玛目的门徒7 小时前
试用leetcode之典中典 二数之和问题
java·算法·leetcode
逝水无殇9 小时前
C# 异常处理详解
开发语言·后端·c#
懒鸟一枚10 小时前
深入理解 Linux 内存、Swap 交换分区与分页机制的关系
java·linux·数据库
我命由我1234511 小时前
执行 Gradle 指令报错,无法将“grep”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
考虑考虑11 小时前
Sentinel安装
java·后端·微服务
IT_陈寒11 小时前
SpringBoot自动配置失灵?你可能忘了这个关键注解
前端·人工智能·后端