定时清理日志
-
编写删除shell脚本
## 新建脚本 vi auto-del-30-days-ago-log.sh ## 脚本内容 find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \; ## 实例命令: ## 将/opt/soft/log/目录下所有30天前带".log"的文件删除。 find /usr/local/tomcat/logs/ -mtime +30 -name "*.log" -exec rm -rf {} \; -
赋予脚本编辑权限
chmod +x "文件名" -
设置定时任务
## 打开定时服务 crontab -e ## 编辑定时任务 10 0 * * * /opt/soft/log/auto-del-30-days-ago-log.sh # 这里的设置是每天凌晨0点10分执行auto-del-30-days-ago-log.sh文件进行数据清理任务了。定时任务格式
- minute hour day day month week command
具体参数解释
-
minute: 表示分钟,可以是从0到59之间的任何整数。
-
hour:表示小时,可以是从0到23之间的任何整数。
-
day:表示日期,可以是从1到31之间的任何整数。
-
month:表示月份,可以是从1到12之间的任何整数。
-
week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。
-
command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。
本文介绍了如何创建一个名为`viauto-del-30-days-ago-log.sh`的Shell脚本来删除指定目录中30天前的.log文件。通过`find`命令结合`mtime`参数和`exec`指令实现自动清理。例如,删除`/usr/local/tomcat/logs/`目录下30天前的日志。然后,通过`chmod +x`命令赋予脚本执行权限。最后,利用`crontab -e`开启定时任务服务,设置每天0点10分运行脚本,确保日志文件定期清理。

1577

被折叠的 条评论
为什么被折叠?



