1. Crontab定时任务

   Crontab 基本语法

  t1 t2 t3 t4 t5 program
  • 其中 t1 是表示分钟,t2 表示小时,t3 表示一个月份中的第几日,t4 表示月份,t5 表示一个星期中的第几天。program 表示要执行的程序。
  • 当 t1 为 * 时表示每分钟都要执行 program,t2 为 * 时表示每小时都要执行程序,其馀类推
  • 当 t1 为 a-b 时表示从第 a 分钟到第 b 分钟这段时间内要执行,t2 为 a-b 时表示从第 a 到第 b 小时都要执行,其馀类推
  • 当 t1 为 */n 时表示每 n 分钟个时间间隔执行一次,t2 为 */n 表示每 n 小时个时间间隔执行一次,其馀类推
  • 当 t1 为 a, b, c,... 时表示第 a, b, c,... 分钟要执行,t2 为 a, b, c,... 时表示第 a, b, c...个小时要执行,其馀类推

2. Tomcat日志清理脚本

  Tomcat日志随着项目运行时长越来越多,访问量大时很可能撑满硬盘。下面贴一个自用的Tomcat日志清理脚本。

 1 #!/bin/sh
 2 
 3 #日志文件所在目录
 4 #path=/usr/local/tomcat/apache-tomcat-8.5.32/logs
 5 path=/usr/local/tomcat/apache-tomcat-8.5.32/logs
 6 
 7 cd ${path}
 8 
 9 #catalina.out日志备份
10 #获取前7天的日期
11 bak_date=`date +%Y-%m-%d -d "7 days ago"`
12 #备份catalina.out日志,后面添加日期
13 #cp catalina.out catalina.out.${bak_date}.log
14 #清空catalina.out日志文件
15 echo > catalina.out
16 
17 #7天之前的日志文件删除
18 #获取7天之前的日期
19 del_date=`date +%Y-%m-%d -d "7 days ago"`
20 #获取文件名中的日期字符串,然后对此时间进行相应的操作,localhost_access_log的后缀名一般为txt文件,这里包括txt文件
21 for n in `ls *.log *.txt -1`;do
22     m=`echo $n | awk -F. '{print $(NF-1)}'`
23     m=`echo ${m:0-10}`
24     if [ ! $m ]; then
25         echo "IS NULL"
26         continue
27     fi
28     if [[ $m < $del_date || $m = $del_date ]];then
29         echo file $n will be deleted.
30         rm -rf $n
31     fi
32 done
Tomcat清理脚本

相关文章:

  • 2021-12-12
  • 2018-05-27
  • 2021-11-19
  • 2021-05-19
  • 2021-05-03
  • 2021-12-02
  • 2021-11-04
  • 2021-12-02
猜你喜欢
  • 2021-07-29
  • 2021-06-16
  • 2022-01-05
  • 2021-11-20
  • 2021-10-24
  • 2022-01-12
  • 2021-08-14
  • 2021-12-01
相关资源
相似解决方案