定时删除应用日志文件

前段时间上线了个WEB项目,日志系统使用log4j,每天会自动生成日志文件,单个文件虽然不是很大,但随着时间,日志占用的空间会越来越大,所以加上日志清除机制就很重要了,本次将使用crontab+shell脚本实现此功能.

一:创建shell脚本并赋予权限

touch /home/oracle/auto-del-20-days-ago-log.sh

chmod +x auto-del-20-days-ago-log.sh

二:使用vi命令编辑脚本(find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \;)

#!/bin/sh

find /home/oracle/logs/ -mtime +20 -name "*.*" -exec rm -rf {} \;

保存退出(:wq)。

三:启动定时任务crontab,定时启动该脚本

命令行输入crontab -e,点击i进入编辑模式,键入如下命令

10 11 * * * /home/oracle/auto-del-20-days-ago-log.sh >/dev/null 2>&1

保存退出(:wq)。

该命令会在每天11点10分,定时启动auto-del-20-days-ago-log.sh来删除/home/oracle/logs下创建时间超过20天的日志

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容