linux设置定时清理日志文件脚本

前言

当我们在生产过程中,都会遇到诸如此类的问题。定时清理日志成为了必不可少的一步骤!

一.定时清理简述

当我们要定期的备份以及删除时,我们需要写一个shell 脚本,然后用 crontab 来每天定期执行。

二.定时脚本编写

find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \;

实例命令:

删除/opt/soft/log/目录下30天前所有".log"结尾的文件:

find /usr/local/tomcat/logs/ -type f -name "*.log" -mtime +30 -exec rm -rf {} \;

具体参数说明如下:

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

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

-type f:文件类型,f是文件

-name "*.log":希望查找的数据类型,"*.log"表示查找扩展名为log的所有文件;

-mtime:标准语句写法;

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

-exec:固定写法;

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

{} \; :固定写法,一对大括号+空格+\+;
(注意:可添加:0 */1 * * * echo “Have a break now.” >>
/usr/local/myScript/logs/test.txt 每一个小时往test.txt中插入一条数据,主要用于测试是否执行该脚本。)

三.添加定时任务

使用crontab -e命令编辑定时任务,并添加以下内容,命令含义为:每天凌晨1点10分执行cleanlog.sh脚本

10 1 * * * /bin/sh /usr/local/myScript/cleanlog.sh

 

 

posted @ 2023-11-14 10:33  玩转大数据  阅读(1598)  评论(0编辑  收藏  举报