linux 自动清除日志 脚本

一、 remove_logs.sh 脚本编写

bash 复制代码
#!/bin/bash
#定义日志文件路径
LOG_DIR="/usr/local/src/cncareer-client/logs"
#删除超过2天的日志文件,即只保留近2天的日志
find $LOG_DIR -name "*.log" -type f -mtime +2 -exec rm -f {} \;
find $LOG_DIR -name "*.html" -type f -mtime +2 -exec rm -f {} \;

脚本解释:

  • find $LOG_DIR :在 LOG_DIR 目录下递归查找。

  • -name "*.log" :文件名匹配 *.log 模式。

  • -type f:只匹配普通文件(不包括目录、链接等)。

  • -mtime +2 :筛选修改时间(modification time)超过2天的文件。

    • +2 表示文件最后修改时间在 2×24小时之前 ,即至少是 3天前 修改的文件(严格来说是 >2 天)。

    • 删除的是 修改时间距今大于2天(即3天及更早) 的文件

  • -exec rm -f {} \; :对每个匹配的文件执行 rm -f 强制删除(-f 忽略不存在的文件且不提示确认)。{} 被替换为当前文件路径,\; 表示 -exec 命令结束。

二、赋予脚本执行权限

复制代码
chmod +x remove_logs.sh

三、cron 自动化配置

复制代码
crontab -e 
bash 复制代码
0 1 * * * /usr/local/src/cncareer-client/remove_logs.sh >/dev/null 2>&1

编辑保存

PS: 每日凌晨一点执行定时清理日志任务

相关推荐
kyriewen2 小时前
别再 console.log 了:5 个 Chrome DevTools 调试技巧,用过就回不去了
前端·javascript·面试
IT_陈寒4 小时前
Python搞不定字符串编码?这破玩意坑我两小时!
前端·人工智能·后端
DigitalOcean5 小时前
Laravel 开发者已在 DigitalOcean 上开通超过 10 万台服务器
前端·laravel
星始流年5 小时前
从 Tool 到 Skill——基于 LangChain 的服务端Skill实现
前端·langchain·agent
李惟6 小时前
开源本地通信库,纯客户端 RPC,像聊天一样通信
前端
YAwu116 小时前
深入解析 React 炫彩鼠标跟随标题组件:从坐标定位到动画性能
前端·react.js
GuWenyue6 小时前
排序效率低?5分钟吃透快速排序,性能飙升至O(nlogn)
前端·javascript·面试
OpenTiny社区6 小时前
🎨 看完 GenUI SDK 源码我悟了!
前端·vue.js·github
叁两6 小时前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js
何时梦醒6 小时前
深入理解递归与快速排序 —— 从基础入门到手写实现
前端·javascript