find命令详细用法:
find . 这个点是当前目录,使用前一定要切换到指定目录,否则在整个系统查找很危险;
这里 一定要先cd 到 要处理的目录。
1、查找当前目录下的大于10M文件
find . -type f -size +10M
2、删除find查找到的匹配文件(命令及其危险,慎用)
find . -type f -size +10M -delete
或者 find . -type f -size +10M -exec 'rm' {} \;
3、删除.part 上传零时文件
find . -name "*.part" -exec 'rm' {} \;
4、查找uploads临时文件
find . -path "*uploads/*"
5、查找 用户uploads 里面 10天前的零时文件
find . -path "*uploads/*" -mtime +10
6、删除用户uploads 里面 10天前的零时文件
find . -path "*uploads/*" -mtime +10 -exec 'rm' -R {} \;
建立定时任务执行sh文件;
新建cron_delete_data.sh文件:
#!/bin/bash
find /home/www/data -type f -size +10M -exec 'rm' {} \;
#delte part file
find /home/www/data -name "*.part" -mtime +2 -exec 'rm' {} \;
计划任务:
添加定时器任务(指定-u参数,方便管理):
crontab -e -u www
复制内容添加并保存 按 wq退出;
10 7,23 * * * /home/xfplay_cloud/xfcloud/init.d/cron_delete_data.sh
这个任务意思是:每天的7:10,和23:10 执行 cron_delete_data.sh 任务
保存后,启动定时器:
systemctl restart crond.service
查看定时器运行情况:
systemctl status crond.service
或
crontab -u www -l
查看定时器日志:
tail -f -n 200 /var/log/cron