Linux删除若干天前的文件夹
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux删除若干天前的文件夹相关的知识,希望对你有一定的参考价值。
注意是删除若干天前的文件夹。需求:
1、指定路径/home/dir下有以日期命名的文件夹,例如20180309,20180310,20180311等。
2、需要通过脚本定时删除指定路径/home/dir下3天前的文件夹。
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 参考技术A find /home/dir -mtime +3 -exec rm -rf \;追问
没有效果。
追答因为三天之内修改过
linux定时删除N天前的文件(文件夹)
参考技术A 磁盘只有22T容量,为了避免爆盘,业务需要定时清除数据,根据网上的资料总结了一下设置方法:
可以使用find命令
另外的方法大同小异:
可以吧这个命令写到脚本里,
cleandata.sh
find /tmp -mtime +30 -type f -name "*" -exec rm -rf ;
配置可执行
chmod u+x ./cleandata.sh
配置到crontab
crontab -e
0 0 * * * /home/username/cleandata.sh > /dev/null 2>&1
每天零点自动执行
其中:
第一个 号表示时间中的 分钟 取值范围:0-59
第二个 号表示时间中的 小时 取值范围:0-23
第三个 号表示一个月中的第几天,取值范围:1-31
第四个 号表示一年中的第几个月,取值范围:1-12
第五个*号表示一个星期中的第几天,以星期天开始依次的取值为0~7,0、7都表示星期天
以上是关于Linux删除若干天前的文件夹的主要内容,如果未能解决你的问题,请参考以下文章