Tomcat日志文件定时清理备份的脚本
更新时间:2016年12月06日 09:15:15 作者:jaamy
这篇文章主要介绍了Tomcat日志文件定时清理备份的脚本的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
以下脚本主要备份的日志文件为tomcat的catalina.out、localhost_access_log.yyyy-mm-dd.log日志和项目的日志文件,其中项目的日志文件格式为"projectname-yyyy-mm-dd.log",以下为备份脚本,具体的操作都有相应的注释,供大家参考,具体情况请根据日志文件的格式和要求来使用本脚本。
#!/bin/sh ###### # 日志定时运行时间为每天0点1分 # 删除20天之前的日志文件,压缩一周之前的日志文件 # 日志文件时间是根据日志名称后面的日期来计算 # 运行脚本注意日志文件中是否有其他相同后缀的非日志文件和日志文件名称是否符合要求 ###### #日志文件所在目录 path=/home/tomcat/apache-tomcat-project/logs #进入日志目录 cd $path #catalina.out日志文件备份 #获取前一天的日期 bak_date=`date +%Y-%m-%d -d "1 days ago"` #备份catalina.out日志,后面添加日期 cp catalina.out catalina.out.$bak_date.log #清空catalina.out日志文件 echo > catalina.out #20天之前的日志文件删除 #获取20天之前的日期 del_date=`date +%Y-%m-%d -d "20 days ago"` #获取文件名中的日期字符串,然后对比时间进行相应的操作,localhost_access_log的后缀文件名一般是txt,这里包括txt文件 for n in `ls *.log *.txt -1`;do m=`echo $n | awk -F. '{print $(NF-1)}'` m=`echo ${m:0-10}` if [[ $m < $del_date || $m = $del_date ]];then echo file $n will be deleted. rm -rf $n fi done #一周之前的文件压缩 #获取一周之前的日期 zip_date=`date +%Y-%m-%d -d "7 days ago"` #获取文件名中的日期字符串,然后对比时间进行相应的操作 for n in `ls *.log *.txt -1`;do m=`echo $n | awk -F. '{print $(NF-1)}'` m=`echo ${m:0-10}` echo $n $m if [ ! $m ]; then echo "IS NULL" continue fi if [[ $m < $zip_date || $m = $zip_date ]];then echo file $n will be zip. zip $n.zip $n rm -rf $n fi done
以上所述是小编给大家介绍的Tomcat日志文件定时清理备份的脚本,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
相关文章
Tomcat的安装与使用及Maven与Servlet的使用教程
这篇文章主要介绍了Tomcat的安装与使用及Maven与Servlet的使用教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-07-07IDEA Maven项目使用debug模式运行Tomcat的详细教程
这篇文章主要介绍了IDEA Maven项目使用debug模式运行Tomcat的方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-06-06
最新评论