Marco Nie - mtime 2019-12-20T10:15:00+08:00 Typecho https://blog.niekun.net/feed/atom/tag/mtime/ <![CDATA[Linux 自动删除指定天数前文件]]> https://blog.niekun.net/archives/832.html 2019-12-20T10:15:00+08:00 2019-12-20T10:15:00+08:00 admin https://niekun.net 服务器上搭建了个云盘,有个 temp 目录存放一些临时文件,想要设定指定天数后自动删除,可以使用 Linux 脚本实现。

用到的命令:
find mtime crontab

基本思路是使用 find 命令筛选符合条件的文件或文件夹,使用 crontab 创建定时任务。

find 的详细用法:https://niekun.net/index.php/archives/543.html
crontab 的详细用法:https://niekun.net/index.php/archives/461.html

指定删除 /temp 目录下超过 3 天的文件,新建脚本 timerRemove.sh 内容如下:

LOCALDIR="/temp/"
LOCALAGE="3"
cd ${LOCALDIR} || exit

find ${LOCALDIR}* -mtime +${LOCALAGE} -exec rm -rf {} \;

在 crontab 配置文件内修改如下,每 2 小时执行一次脚本:

SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/root

0  */2  *  *  * root bash /path/to/timerRemove.sh
]]>