i_basedir=/archlog/cvbackup # backup base dir
i_dbnm=SRPDB
KEEP_BACKUP_NUMS=0 # keep KEEP_BACKUP_NUMS of backup
i_cvbackup=$i_basedir/${i_dbnm} # dir of tar for cvbackup to tape
i_log=$i_basedir/scripts/${i_dbnm}_backup.log # operation log
#----------------------------------------------------------#
# 函数名: rm_dir
# 用法 : rm_dir /cvbackup/testdb 2
# 功能 : 保留最新的几个文件
#----------------------------------------------------------#
function rm_dir {
i_dir=$1
i_keep=$2
if [ ! -d $i_dir ]
then
echo "-->!!ERROR dir $i_cvbackup not exists" >> $i_log
exit 0
fi
cd $i_dir
echo "-->rm old file of $i_dir (KEEP_BACKUP_NUMS=$i_keep):" >> $i_log
i_cnt=0
for i in `ls -t`
do
{
if [ $i_cnt -ge $i_keep ]
then
echo "-->rm:$i" >> $i_log
rm -f $i
#rm -rf $i #-r 即可删除目录
fi
i_cnt=`expr $i_cnt + 1`
}
done
} # end rm_dir define
# clean old backup file
if [ ! -d $i_cvbackup ]
then
echo "-->!!ERROR dir $i_cvbackup not exists" >> $i_log
exit 0
fi
rm_dir $i_cvbackup $KEEP_BACKUP_NUMS
exit 0
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22661144/viewspace-1477104/
,如需转载,请注明出处,否则将追究法律责任。