Linux定时清空日志或图片等文件

接上一篇离线安装nas共享存储,需求是数据只能在nas上保存一个月的数据,超出一个月的数据就需要自动清理,也很简单,没几句,直接上命令。

将语句写到一个可执行shell脚本文件中,再设置cron表达式,让系统自动执行

  1. 创建shell脚本

切换到创建shell脚本的目录

cd /home/nfs

创建shell脚本

touch auto-del-30-days-log.sh

授权

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

  1. 编辑shell脚本

vim auto-del-30-days-log.sh

按i进入编辑模式----参数解释“*.png”表示所有后缀为.png的文件,灵活应用,是jpg就”*.jpg”,是日志就”*.log”  下面的注释可加可不加,加上之后是为了方便让别的人看到这个文件知道是shell脚本

#!/bin/sh

find /home/nfs / -mtime +30 -name "*.png" -exec rm -rf {} \;

保存退出(wq)

  1. 创建定时任务 命令:crontab,参数解释 -e编辑、-u查看、-r删除

crontab -e

将设置的shell脚本放到定时任务中

按i编辑输入下面语句  这句话代表的意思删除三十天的数据,每天凌晨00.10分执行定时任务清理日志

10 0 * * * /home/eid/nfs/auto-del-30-days-ago-log.sh

保存退出(wq)

查看刚刚设置的定时任务有没有写入到系统中

crontab -l

Linux定时清空日志或图片等文件_第1张图片

成功!

你可能感兴趣的:(linux,运维,服务器)