您的位置:首页 > 运维架构 > Shell

shell脚本删除7天前的日志

2020-07-14 05:23 113 查看

1.删除文件命令
find 对应目录 -mtime +天数 -name “文件名” -exec rm -rf {} ;
实例:

find /opt/soft/log/ -mtime +7 -name "*.log" -exec rm -rf {} \;

说明:将/opt/soft/log/目录下所有7天前带".log"的文件删除

2.创建shell

touch /opt/soft/bin/auto-del-7-days-ago-log.sh

(创建一个名为auto-del-7-days-ago-log.sh的可执行文件)

chmod +x auto-del-30-days-ago-log.sh

(为其分配可执行权限)

3.编辑shell脚本(在.sh可执行文件目录下)

vi auto-del-7-days-ago-log.sh  (进入编辑脚本)

编辑auto-del-7-days-ago-log.sh文件如下:
#!/bin/sh
find /opt/soft/log/ -mtime +7 -name "*.log" -exec rm -rf {} \;
ok,保存退出(:wq)。

4.计划任务

crontab -e

将auto-del-7-days-ago-log.sh执行脚本加入到系统计划任务,到点自动执行

59 23 * * * /opt/soft/log/auto-del-7-days-ago-log.sh >/dev/null 2>&1

这里是设置为每天23点59分执行auto-del-7-days-ago-log.sh进行数据处理

完成以上步骤,shell脚本自动删除n天前的日志文件就结束了。
友情提醒:若是重要的日志文件,建议在测试环境下先操作,以确保万无一失。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: