
three_days_ago=$(date -d -3day +%Y%m%d)
workpath=/home/dir
for file in $workpath/* do
file_name=`basename $file`
if [[ $file_name -lt $three_days_ago ]] then
rm -rf $file
fi
done
假如在一个目录中保留最近30天的文件,30天前的文件自动删除;
#find /tmp -mtime +30 -type f -name *.sh[ab] -exec rm -f {} /tmp _设置查找的目录;
1、mtime +30 _设置时间为30天前;
2、type f _设置查找的类型为文件;
3、name *.sh[ab] _设置文件名称中包含sha或者shb;
4、exec rm -f _查找完毕后执行删除 *** 作;
提示:将此命令写入crontab后即可自动完成查找并删除的工作。
另外的方法大同小异:#find /tmp -mtime +30 -type f | xargs rm -rf。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)