انجمن کاربران لینوکس ایران - تکنوتاکس سابق

نسخه ي کامل: مشکل شل اسکریپ برای بک آپ
شما در حال مشاهده نسخه ي متني اين صفحه هستيد. مشاهده نسخه کامل تر با قالب بندي صحيح
سلام دوستان
من یه شل اسکریپ دارم که از mysql بک آپ میگیره.
اما بعد از مدتی آرشیو ها زیاد میشه و باید دستی پاک کنم.
من چیکار کنم که اتوماتیک مثلا از 10 روز 7 روز رو پاک کنه؟ یا 2 تا رو جا بزاره بقیه رو پاک کنه؟
کد :
#!/bin/bash
# Shell script to backup MySql database
# To backup Nysql databases file to /backup dir and later pick up by your
# Author: Vivek Gite; under GNU GPL v2.0+
NOW=$(date +"%d-%m-%Y")
DEST="/home/mysql".${NOW}-$(date +"%T")
# set mysql login info
MUSER="root"         # Username
MPASS=''   # Password
MHOST="localhost"  # Server Name

# guess binary names
MYSQL="$(which mysql)"
MYSQLDUMP="$(which mysqldump)"
GZIP="$(which gzip)"

[ ! -d "${DEST}" ] && mkdir -p "${DEST}"
# get all db names
DBS="$($MYSQL -u $MUSER -h $MHOST -p$MPASS -Bse 'show databases')"
for db in $DBS
do
FILE=${DEST}/mysql-${db}.${NOW}-$(date +"%T").gz
# get around error
$MYSQLDUMP --single-transaction -u $MUSER -h $MHOST -p$MPASS $db | $GZIP -9 > $FILE
done
میتونی از دستور find استفاده کنی :
کد :
find /PATH-TO-BACKUP -mtime +2
این دستور فایل هایی که بیشتر از دو روز پیش درست شده باشد رو پیدا میکند .