shell_sctipts: 删除mysql备份到最后7日

目前,mysql的备份文件,经过一周左右清理,手动清理会比较费事,所以写了一个简单脚本来实现。

前提介绍:

mysql备份文件放在/usr/bak/sql里面,sql文件的备份名称格式为: mysql-`data +%F-%H-%M-%S`.sql

脚本如下:

#!/bin/bash
#
declare -i NUM=0
declare -i SUM=0

cd /usr/bak/sql
SUM=`ls com* |sort |wc -l`
  if [ $SUM -le 7 ]; then
    echo "There has no more than 7 sql files in this directory."
    exit 2
  fi  
let NUM=$SUM-7

for I in `seq 1 $NUM`; do
    ls mysql-* |sort |head -1 |xargs rm -f {}
done

echo "$NUM sql files have been deleted."
echo "The remaining sql flies are:"
ls mysql-* |sort

 脚本功能: 删除备份文件到最近7日,显示删除文件的个数,并列出剩余的sql文件。 如果文件个数少于7个,则提醒并退出。

原文地址:https://www.cnblogs.com/llius/p/5363928.html