标签:shell脚本 文件名 inf rtu col name pac files crazy
cronolog日志切割catalina.out
(一)解压安装cronolog
1:wget https://files.cnblogs.com/files/crazyzero/cronolog-1.6.2.tar.gz //下载cronolog
2:tar zxf cronolog-1.6.2.tar.gz //解压cronolog
3:cd cronolog-1.6.2 //进入安装目录
4:./configure && make && make install //编译安装
5:which cronolog //执行后可以看到/usr/local/sbin/cronolog 安装的目录
(二)修改catlina.sh配置文件
1:vim catlina.sh
2:将:
if [ -z "$CATALINA_OUT" ] ; then CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out fi 改为: if [ -z "$CATALINA_OUT" ] ; then CATALINA_OUT="$CATALINA_BASE"/logs/%Y-%m-%d.catlina.out fi
3:将:
touch "$CATALINA_OUT" 改为: #touch "$CATALINA_OUT"
4:将:
org.apache.catalina.startup.Bootstrap "$@" start >> "$CATALINA_OUT" 2>&1 "&" 改为 org.apache.catalina.startup.Bootstrap "$@" start 2>&1 | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &
5:将:
org.apache.catalina.startup.Bootstrap "$@" start >> "$CATALINA_OUT" 2>&1 "&" 改为: org.apache.catalina.startup.Bootstrap "$@" start 2>&1 | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &
第4步与第5步一个是if里的一个是else里的不一样需要全改
然后重启tomcat就可以生成一个xxxx-xx-xx.catlina.out的文件。
定时清理日志:
想要写一个Shell脚本,定期清理掉久远的日志文件 ,避免磁盘不断被占用。
touch auto_del_log.sh chmod +x auto_del_log.sh vi auto_del_log.sh #!/bin/bash find /home/tomcat8/logs/ -type f -mtime +7 -name “*.out” -exec rm -rf {} \; find /home/tomcat8/logs/ -type f -mtime +7 -name “*.out” -exec rm -rf {} \;
参数含义:
find用来在指定目录下查找文件
/home/tomcat8/logs/ 查找路径
-type 类型 f 普通文件 l 符号连接 d 目录 c 字符设备 b 块设备 s 套接字p Fifo
-mtime <24小时数>:查找在指定时间曾被更改过的文件或目录,单位以24小时计算;
{} 用于与-exec选项结合使用来匹配所有文件,然后会被替换为相应的文件名
windows删除日志
forfiles /p " D: \Tomcat 6.0\logs " /s /m *.log /d -7 /c "cmd /c del @path"
forfiles /p " D: \Tomcat 6.0\logs " /s /m *.txt /d -7 /c "cmd /c del @path"
加入计划任务中执行
语法
forfiles [/p Path ] [/m SearchMask ] [/s ] [/c
Command ] [/d [{+ | - }] [{MM / DD / YYYY | DD }]]
参数
/p Path
指定Path ,表明要从哪里开始搜索。默认的文件夹是当前工作目录,该目录通过键入句号(.) 指定。
/m SearchMask
按照SearchMask 搜索文件。默认的SearchMask
是*.* 。
/s
指示forfiles 在子目录中搜索。
/c Command
在每个文件上运行指定的Command 。带有空格的命令字符串必须用引号括起来。默认的Command 是"cmd /c echo @file" 。
/d [{+ | - }] [{MM / DD / YYYY | DD }]
选择日期大于或等于(+ )(或者小于或等于(- ))指定日期的文件,其中MM /
DD / YYYY 是指定的日期,DD 是当前日期减去DD 天。如果未指定+ 或- ,则使用+ 。DD 的有效范围是0 -
32768。
/?
标签:shell脚本 文件名 inf rtu col name pac files crazy
原文地址:https://www.cnblogs.com/luck666/p/10255144.html