Linux 每天删除一个月前的日期文件
@羲凡——只为了更好的活着Linux 每天删除一个月前的日期文件公司中总有一些按照日期来命名的文件夹(比如日志文件等),需要定时的删除一个月以前或两个月以前的历史数据。假如 /aarontest/data/ 目录下存放在一下文件夹20181122123456201812121234562018122212345620190122123456现在要删除30天前的文件夹,执行脚本如下...
·
@羲凡——只为了更好的活着
Linux 每天删除一个月前的日期文件
公司中总有一些按照日期来命名的文件夹(比如日志文件等),需要定时的删除一个月以前或两个月以前的历史数据。
假如 /aarontest/data/ 目录下存放在一下文件夹
20181122123456
20181212123456
20181222123456
20190122123456
现在要删除30天前的文件夹,执行脚本如下
#!/bin/bash
Folder_Name=/usr/local/package/aarontest/data
Del_Log=$Folder_Name/del-onemonths-ago-file.log
echo `date +%Y年%m月%d日%H时%M分%S秒` >> $Del_Log
Today=`date -d '-30 days' +%s`
for folder_name in ${Folder_Name}/*
do
Temp_file=`basename $folder_name`
if [ `date -d ${Temp_file:0:8} +%s` -lt ${Today} ]
then
echo ${Temp_file:0:8} >> $Del_Log
rm -rf ${Folder_Name}/${Temp_file}
echo "==="${Folder_Name}/${Temp_file}" delete over !!!===" >> $Del_Log
fi
done
echo "已经删除1个月前的文件夹" >> $Del_Log
执行完,生成del-onemonths-ago-file.log日志文件
2019年01月31日13时31分53秒
20181122
===/aarontest/data/20181122123456 delete over !!!===
20181212
===/aarontest/data/20181212123456 delete over !!!===
20181222
===/aarontest/data/20181222123456 delete over !!!===
已经删除1个月前的文件夹
将上述删除脚本放入crontab中,每天早上八点执行
0 8 * * * bash /aarontest/Data/del-onemonths-ago-file.sh
====================================================================
@羲凡——只为了更好的活着
若对博客中有任何问题,欢迎留言交流
更多推荐
已为社区贡献1条内容
所有评论(0)