删除备份脚本

这个脚本的主要功能就是读取配置文件,然后根据需求保留备份的个数(备份的文件是以时间格式命名的),删除最老的备份,以下是脚本内容:

#!/bin/bash
KEEP_NUM=2
for i in `cat /opt/sh/delete_backup.conf`
do
    CURRENT_NUM=`ls -l ${i} | grep -v total | wc -l`
    for((j=${CURRENT_NUM};j>${KEEP_NUM};j--))
    do
        FILE_NAME=`ls ${i} | sort -n | head -n 1`
        echo "删除的目录是: ${i}/${FILE_NAME}"
        cd ${i} && [ -d ${FILE_NAME} ] && rm ${FILE_NAME} -rf && sleep 1
    done
done

delete_backup.conf的内容是删除的目录

/opt/sh/testdir/a
/opt/sh/testdir/b