Linux中编写Shell脚本定时清除服务器日志
我们的服务器部署在Linux系统上,每天都会产生大量的日志文件,随着时间的推移,日志文件会越来越多,消耗我们的存储空间,太占资源,所以我们需要定时区删除服务器上的一些日志文件,这个时候可以通过shell脚本来实现定时删除。
假设当前我们在/opt/testLog目录下,具体的操作步骤为:
1、在该文件目录下,新建定时清除文件auto-del-log.sh,命令为:touch auto-del-log.sh;
2、编辑auto-del-log.sh文件,设置需要清除的日志文件位置,
1)编辑auto-del-log.sh,命令为:vim auto-del-log.sh;
2)设置需要清除的日志文件位置命令为:
#!/bin/sh
find /opt/testLog/logs/ -mmin +2 -name “*.log” -exec rm -rf {} ;
# 此处表示查找需要清除的日志文件位于/opt/testLog/logs/目录下,以.log结尾的2分钟之前的文件,此处的-mmin +2 指的是2分钟之前的文件
3、对auto-del-log.sh赋予可执行权限,命令为:chmod +x auto-del-log.sh;
4、创建定时任务,命令为:crontab -e;
5、然后设置定时任务触发时间,如:00 19 * * * sh /opt/testLog/auto-del-log.sh 该命令意思为每天的19时00分执行/opt/testLog/目录下的auto-del-log.sh文件;
6、设置完成后,重载定时配置,命令为:service crond reload