想在服务器上写一个shell脚本,在磁盘使用率达到80%时,自动清理掉一些没有用的日志文件,根据这个想法,在生产环境上写了一个以下脚本,按照该流程,可实现在linux环境做一个定时任务来执行shell脚本,监控磁盘内存,当到达80%时,将自动清空catalina.out的日志文件。1.进入到tomcat的bin目录执行以下操作:#touch clearlog.sh#vim clearlog.sh 1 #!/bin/bash

2 maxUsed=$(df -h|grep /dev/sda1|awk -F'[ %]+' '{print $5}')

3 val=80

4 if [ "$maxUsed" -gt "$val" ];then

5 cat /dev/null

6 >/app/web/tomcat-8089/logs/catalina.out

7 echo "clear success catalina.out end"

8 fi2.给脚本加上可执行权限:chmod 777 clearlog.sh3.执行crontab –e4.添加定时任务内容:* * * * * /bin/bash /app/web/tomcat-8089/bin/clearlog.sh完成以上即可。5.最后执行#tail -500f /var/spool/mail/root可查看定时任务执行情况。按照举一反三的学习态度,其他时间的定时任务设置,可参考以下内容: 1 实例1:每1分钟执行一次cmd

2 * * * * * cmd

3

4 实例2:每小时的第3和第15分钟执行

5 3,15 * * * * cmd

6

7 实例3:在上午8点到11点的第3和第15分钟执行

8 3,15 8-11 * * * cmd

9

10 实例4:每隔两天的上午8点到11点的第3和第15分钟执行

11 3,15 8-11 */2 * * cmd

12

13 实例5:每周一上午8点到11点的第3和第15分钟执行

14 3,15 8-11 * * 1 cmd

15

16 实例6:每晚的21:30执行

17 30 21 * * * cmd

18

19 实例7:每月1、10、22日的4 : 45执行

20 45 4 1,10,22 * * cmd

21

22 实例8:每周六、周日的1 : 10执行

23 10 1 * * 6,0 cmd

24

25 实例9:每天18 : 00至23 : 00之间每隔30分钟执行

26 */30 18-23 * * * cmd

27

28 实例10:每星期六的晚上11 : 00 pm执行

29 0 23 * * 6 cmd

30

31 实例11:每一小时执行

32 0 */1 * * * cmd

33

34 实例12:晚上11点到早上7点之间,每隔一小时执行

35 0 23-7 * * * cmd参考:https://www.cnblogs.com/qfdxxdr/p/6380783.html

查看原文