首页 > 其他 > 详细

定时任务删除日志文件

时间:2021-05-08 16:46:34      阅读:15      评论:0      收藏:0      [点我收藏+]

 

问题:

服务器上日志文件不断增加导致磁盘满,用户无法登陆到Linux机器。

 

解决方案:

定时任务每日删除3天前的日志。

 

步骤:

1、手动执行命令删除日志

find /opt/web/log/ -mtime +3 -name "*.log.*" -exec rm -rf {} \;

命令解析:

将目录/opt/web/log/下3天前文件后缀为.log的文件删除

find:linux的查找命令,用户查找指定条件的文件;

/opt/web/log/:想要进行清理的任意目录;

-mtime:标准语句写法;

+3:查找3天前的文件,这里用数字代表天数;

"*.log":希望查找的数据类型,"*.jpg"表示查找扩展名为jpg的所有文件,"*"表示查找所有文件,这个可以灵活运用,举一反三;

-exec:固定写法;

rm -rf:强制删除文件,包括目录;

{} \; :固定写法,一对大括号+空格+\+; 

 

2、将脚本写入到文件,使用文件进行日志删除

创建文件:touch  auto-del-3-days-ago-log.sh

开启权限:chmod -x  auto-del-3-days-ago-log.sh

编辑文件:vim auto-del-3-days-ago-log.sh

写入脚本:find /opt/web/log/ -mtime +3 -name "*.log.*" -exec rm -rf {} \;

执行脚本清除日志:sh auto-del-3-days-ago-log.sh

 

3、添加定时任务,每天凌晨0点10分执行脚本自动清除日志

执行命令:crontab -e

写入命令:10 0 * * * /opt/web/auto-del-3-days-ago-log.sh >/dev/null 2>&1

 

备注:

 新增调度任务可用两种方法:
       1)、在命令行输入: crontab -e 然后添加相应的任务,wq存盘退出。
        2)、直接编辑/etc/crontab 文件,即vi /etc/crontab,添加相应的任务。

 

定时任务删除日志文件

原文:https://www.cnblogs.com/panchanggui/p/14744602.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!