linux定时对历史文件进行清理

由于项目中经常用到导出功能,导致在服务器生成了很多的excel文件,文件多数以放在以日期yyyy-MM-dd的文件夹下,或者以yyyyMMddHHmmss的格式命名,久而久之造成了服务器的磁盘空间不足,所以想到用linux的crontab定时的清理历史文件:

由于是linux新手,shell脚本都不太没表白,只能从网上一步一步的学习脚本:

脚本如下del_history_excel_file.sh

BASE_FILE_PATH="/***/file"
#文件夹名称类型为2016-04-07
folderDateFmt=`date +"%F"`
#folderYesterdayDateFmt=`date -d yesterday +%F`
##date -d 2 days ago" +%Y%m%d

#文件名称格式*20160401*.xls?
fileDateFmt=`date +"%Y%m%d"`


#删除crmExcel下的文件,文件规则为2016-04-01/20160401122122.xls,所以只要删除文件夹
echo "[删除forder1]"
cd $BASE_FILE_PATH"/forder1"
#ls | grep -v  $folderDateFmt"\|"$folderYesterdayDateFmt | xargs rm -rf
ls | grep -v  $folderDateFmt | xargs rm -rf

##删除crmInfo,文件规则为 20160401122122.xls,删除文件即可
echo "[删除forder2]"
cd $BASE_FILE_PATH"/forder2"
ls | grep -v $fileDateFmt | xargs rm

 ,脚本是保留最近当天的文件,其他的文件都删除,

 

最后在crontab中,添加定时任务,crontab -e

#每天凌晨四点执行 删除文件操作
* 4 * * * /home/xx/del_history_excel_file.sh
 
 
ps:删除文件要谨慎! 特别注意使用: rm -rf 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值