linux定时删除过期文件

需求说明

每日凌晨0点定时删除/temp目录下的所有一个月未被访问的文件。

脚本实现

linux 终端输入crontab -e,添加定时任务脚本命令

[root@localhost ~]#  crontab -e

在文件末尾追加

0 0 * * * find /temp -atime +30 -exec rm -rf {} \;

参数说明

命令格式:

find 对应目录 -name "文件名" -type f -mtime +n -exec rm -rf {} ;

  • -type

    f:普通文件

    d:目录

  • -mtime

    修改时间(modify time)

  • -atime

    访问时间(access time)

  • -ctime

    状态变更时间(change time)

  • n

    +n 第n天之前的,不包括第n天当天

    -n 第n天到今天的,不包括第n天当天

    备注: n为整数,以天为单位,0x24表示今天,1x24表示昨天;n有一位小数,以小时为单位,如0.5x24;n有两位小数,以分钟为单位,如0.55x24;

脚本验证

查看定时任务是否被加入定时任务列表

[root@localhost ~]#  crontab -l

查看文件是否被删除,这里调整为在13点25分删除1天内创建的文件(删除刚创建的文件),测试用,操作小心哦

25 13 * * * find /temp -mtime -1 -exec rm -rf {} \;
posted @ 2020-05-06 13:42  有来技术  阅读(2730)  评论(0编辑  收藏  举报