假如在一个目录中保留最近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。
要求删除一个月之前的备份文件,免得把硬盘给整爆了
location 是设置查找的目录
--mtime +30 是设置时间为30天前
-type f 这周查找的类型为文件
然后加入crontab定时来删除:
设定为每个月1号晚上4点10分执行脚本.当然你也可以根据你自己的需求去整.
相同的删除方法:
磁盘只有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都表示星期天
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)