时间:2021-05-19
以下脚本主要备份的日志文件为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`;dom=`echo $n | awk -F. '{print $(NF-1)}'`m=`echo ${m:0-10}`if [[ $m < $del_date || $m = $del_date ]];thenecho file $n will be deleted.rm -rf $nfidone#一周之前的文件压缩#获取一周之前的日期zip_date=`date +%Y-%m-%d -d "7 days ago"`#获取文件名中的日期字符串,然后对比时间进行相应的操作for n in `ls *.log *.txt -1`;dom=`echo $n | awk -F. '{print $(NF-1)}'`m=`echo ${m:0-10}`echo $n $mif [ ! $m ]; thenecho "IS NULL"continuefiif [[ $m < $zip_date || $m = $zip_date ]];thenecho file $n will be zip.zip $n.zip $nrm -rf $nfidone以上所述是小编给大家介绍的Tomcat日志文件定时清理备份的脚本,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文主要介绍的是Linux使用定时任务每周定时清理45天以前日志。服务器每天会产生很大的日志文件,为了不使硬盘被日志文件塞满,因此需要定期清理日志文件。这时我们
以Tomcat6.0为例,其Tomcat目录结构如下:bin(运行脚本)、conf(配置文件)、lib(核心库文件)、logs(日志目录)、temp(临时目录)
下面先给大家介绍tomcat应用文件备份脚本#!/bin/bash#Backuptheentiretomcat8080-disttothe/backupdire
导语linux是一个很能自动产生文件的系统,日志、邮件、备份等。虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽
如下脚本用于mysql全库定时备份mysql_dump_script.sh#!/bin/bash#保存备份个数,最多保留4个文件number=4#备份保存路径b