1.编写清理日志的脚本
#!/bin/bash
echo 开始寻找日志
echo 开始删除host-manager日志
find /opt/tomcat8/logs -mtime +7 -name "host-manager.*.log" -exec rm -rf {} \; #找到超过7天的日志执行删除操作
echo 开始删除localhost_access_log日志
find /opt/tomcat8/logs -mtime +2 -name "localhost_access_log.*.txt" -exec rm -rf {} \;
echo 开始删除manager日志
find /opt/tomcat8/logs -mtime +2 -name "manager.*.log" -exec rm -rf {} \;
echo 开始删除catalina日志
find /opt/tomcat8/logs -mtime +2 -name "catalina.*.log" -exec rm -rf {} \;
echo 清空cat日志
echo "" > /opt/tomcat/logs/catalina.out
说明:
-
find:linux的查找命令,用户查找指定条件的文件;
-
/opt/tomcat8/logs:想要进行清理的任意目录;
-
-mtime:标准语句写法;
-
+7:查找7天前的文件,这里用数字代表天数;
-
".log":希望查找的数据类型,".jpg"表示查找扩展名为jpg的所有文件,"*"表示查找所有文件;
-
-exec:固定写法;
-
rm -rf:强制删除文件,包括目录;
-
{} ; :固定写法,一对大括号+空格++;
2.设置linux 的定时删除日志任务:crontab 命令
(1)crontab -e 编辑服务器的定时任务
分 时 日 月 周 命令
* * * * * /home/blue/do/doTask.s
示例:每天晚上零点零壹分执行 /opt/log.sh 脚本
1 0 * * * /opt/log.sh
(2)crontab -l 查看服务器的定时任务
3.重启服务
service cron restart
网友评论