shell 删除指定目录下过时的文件或目录

exec 1> rmfota.log 2>&1    #把输出log信息存到文件中

workdir="xx/xx"  #指定目录
num=12  #删除12天前的文件

nowDate=`date +"%Y-%m-%d %H:%M"`
start=`date -d  "$nowDate" +%s`
echo "$nowDate   $start"
for fotaDate in `ls -Al $workdir | awk '{print $6","$7","$8}'`
do
    date=`echo $fotaDate | cut -d ',' -f 1`
    time=`echo $fotaDate | cut -d ',' -f 2`
    zipfile=`echo $fotaDate | cut -d ',' -f 3`
    lastDate="$date $time"
    end=`date -d "$lastDate" +%s`
    echo "$lastDate    $end   $zipfile"
    if [ -f "$workdir/$zipfile" ];then
        diffday=`expr $(($start-$end)) / $((60*60*24))`
        echo $diffday
        if [ $diffday -gt $num ];then
            echo "remove $workdir/$zipfile"
            rm -f $workdir/$zipfile
        fi  
    fi  
done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值