Linux定时清理30天前的Tomcat日志脚本

一、在tomcat的log路径下新建.sh脚本文件clean.sh,内容如下:
#!/bin/bash
logs_path="/mnt/tomcat/apache-tomcat-8.5.23/logs"

find $logs_path -mtime +30 -name "localhost.*.log" -exec rm -rf {} \;
find $logs_path -mtime +30 -name "localhost_access_log.*.txt" -exec rm -rf {} \;
find $logs_path -mtime +30 -name "catalina.*.log" -exec rm -rf {} \;
find $logs_path -mtime +30 -name "manager.*.log" -exec rm -rf {} \;
find $logs_path -mtime +30 -name "host-manager.*.log" -exec rm -rf {} \;
find $logs_path -mtime +30 -name "fileservice.log.*" -exec rm -rf {} \;
>$logs_path/catalina.out;
其中,logs_path要根据自身log路径配置。

二、为clean.sh文件添加权限
chmod 777 /mnt/tomcat/apache-tomcat-8.5.23/logs/clean.sh
三、开启定时执行clean.sh脚本进行清理任务

crontab -e进入定时任务的编辑界面中

添加这行(每月1号凌晨2点执行):
0 2 1 * * sh /mnt/tomcat/apache-tomcat-8.5.23/logs/clean.sh

【说明】
crontab 要安装两个软件包:   
vixie-cron 及 crontabs
直接执行 
yum install vixie-cron
yum install crontabs(这句可能不需要,但是你先试试也无关紧要)
---------------------
作者:杰_boat
来源:CSDN
原文:https://blog.csdn.net/u010291330/article/details/79280124
版权声明:本文为博主原创文章,转载请附上博文链接!

原文地址:https://www.cnblogs.com/zgq123456/p/9855848.html

时间: 2024-10-12 22:56:28

Linux定时清理30天前的Tomcat日志脚本的相关文章

linux系统定期清理31天前的应用日志脚本

#!/bin/shecho "开始删除额度系统31天前日志" >> /dccapp/cleanlog.logtime=date +%Techo 该任务执行时间:date +%Y-%m-%d ${time} >> /dccapp/cleanlog.log #构造查询日志字符串 31天前的时间beginreg=date -d "31 day ago" +%Y-%m-%dfinalstr=""${beginreg}".

定时清理两周前的分区上的数据

DECLARE @NEW_P INT DECLARE @P INT SELECT @NEW_P=DATEPART(DAYOFYEAR,CONVERT(DATETIME,GETDATE())) DECLARE BOUNDARY_ID_PARTSCHEME_DAY CURSOR FOR --控制top的值控制清除的时间 SELECT TOP 339 SORV.boundary_id FROM sys.partition_schemes SPS LEFT JOIN sys.partition_rang

自动清理N天前的二进制日志

这里以自动清理5天前的二进制日志为例(做了主从备份或依赖于二进制日志备份的请慎用): 以root身份登录数据库,执行以下命令: set GLOBAL expire_logs_days = 5; 如果希望永久生效,可修改/etc/my.cnf配置文件,在[mysqld]下增加一行:expire_logs_days = 5.

定时删除日志文件---linux定时清理日志

linux是一个很能自动产生文件的系统,日志.邮件.备份等.虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽快的事情.不用你去每天惦记着是否需要清理日志,不用每天收到硬盘空间不足的报警短信,想好好休息的话,让我们把这个事情交给机器定时去执行吧. 1.删除文件命令: find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \; 实例命令: find /opt/soft/log/ -mtime +30

Linux 定时清理日志

1.查找并删除文件 命令1:find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \;   例:find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} \; 命令2:find  对应目录 -mtime +天数 -name "文件名" | xargs rm -rf 例:find  /opt/soft/log/ -mtime +50 -nam

zabbix自动清理30天前的数据

zabbix属于一个细度化的监控工具,其入库数据随着细度的增加相应的入库数据量也会较大,当数据量到一定时候的时候其反映速度会比较慢,尽管其监控服务在配置时可以指定数据的保存周期, 但是了解下通过直接操作数据库进行数据删除还是有必要的. 通过数据库进行删除的脚本如下: #!/bin/bash User="root" Passwd="361way" Date=`date -d $(date -d "-30 day" +%Y%m%d) +%s` #取3

Windows定时删除某天前文件的批处理脚本

备注:1.如XP下因为没有forfiles.exe,拷贝windows2003下的forfiles.exe文件到XP的system32目录即可使用forfiles命令.  2.该文档适用于windows客户端操作系统xp win7/8/10,windows服务器端操作系统 server 2003/2008/2012/2016.3.如有错漏,烦劳指出,谢谢! forfiles.exe及帮助 描述:     选择一个文件(或一组文件)并在那个文件上执行一个命令.这有助于批处理作业. 语法: forf

mysql定时清理binlog

一.没有主从同步的情况下清理日志 mysql -uroot -p123456 -e 'PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ),INTERVAL 5 DAY)'; #mysql 定时清理5天前的binlog mysql -u root -p #进入mysql 控制台 reset master; #重置binlog 二.MySQL主从同步下安全清理binlog日志 1.mysql -u root -p #进入从服务器mysql控制台 show slave

linux下日志自动清理(find删除30天前的数据)

linux是一个很能自动产生文件的系统,日志.邮件.备份等.虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽快的事情.不用你去每天惦记着是否需要清理日志,不用每天收到硬盘空间不足的报警短信,想好好休息的话,让我们把这个事情交给机器定时去执行吧. 1.删除文件命令: find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \; 实例命令: find /opt/soft/log/ -mtime +30