本文主要介绍的是Linux使用定时任务每周定时清理45天以前日志。服务器每天会产生很大的日志文件,为了不使硬盘被日志文件塞满,因此需要定期清理日志文件。这时我们可以写一个shell脚本用来清理某个路径下45天以前的日志,然后再设置一个定时任务每周定时执行这个脚本即可。
①清理某个路径下的日志脚本delOldLogs.sh:
1234[root@prx01 cleanlog]# vim /usr/local/cleanlog/delOldLogs.sh#!/bin/sh#删除输入路径下的修改时间在45天以前的日志文件find $1 -mtime +45 -name "*log*" -exec rm -f {} \;
这段代码不难理解,就是清理参数1所在的路径下的修改时间在45天以前的日志文件
②指定清理哪些路径的日志的脚本del_all_OldLogs.sh:
12345[root@prx01 cleanlog]# vim /usr/local/cleanlog/del_all_OldLogs.sh#!/bin/bash /usr/local/cleanlog/delOldLogs.sh "/home/usr/ewp/logs"/usr/local/cleanlog/delOldLogs.sh "/home/usr/h5/logs"/usr/local/cleanlog/delOldLogs.sh "/home/usr/Payment/logs"
③给脚本添加执行权限:
1[root@prx01 cleanlog]# chmod a+x /usr/local/cleanlog/del*.sh
④添加定时任务:
1[root@prx01 cron]# vim /var/spool/cron/root
添加以下内容:
110 0 * * 6 /usr/local/cleanlog/del_all_OldLogs.sh
注:
⑤查看定时任务:
1[root@app05 logs]# crontab -l