linux 删除指定日期之前的文件


两种方法:

1. 在一个目录中保留最近三个月的文件,三个月前的文件自动删除。

find /email/v2_bak -mtime +92 -type f -name *.mail[12] -exec rm -rf {} \;

/email/v1_bak --设置查找的目录;
-mtime +92 --设置时间为91天前;
-type f --设置查找的类型为文件;
-name *.mail[12] --设置文件名称中包含mail1或者mail2;
-exec rm -f --查找完毕后执行删除操作;
    将此命令写入crontab后即可自动完成查找并删除的工作了。 2. 或者用:find . -ctime +40 -type f | xargs rm -rf   1、编写清理日志脚本clear.sh    #!/bin/sh
   find /opt/bak -mtime +6 -name "*.log" -exec rm {} \;
   find /opt/bak -mtime +6 -name "*.dmp" -exec rm {} \; 2、给脚本授权     chmod +x clear.sh 3、加入定时执行任务     vi /etc/crontab     在最后加入:00 2 * * *  root /opt/sh/clear.sh 4、重启crontab服务

    service crond restart