目前,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个,则提醒并退出。