1.4 KiB
1.4 KiB
#!/bin/bash
# Edit by ZeroC
# Date 2017/11/08
## 需要调用/data/script/rsync/rsync_server_to_remote.sh
serverlist=("admin" "api" "bases" "capital" "contract" "fullscale" "orders" "others" "pc" "products" "repayment" "scan" "swoole" "sysaccount" "transaction" "trusteeship" "users")
dir=/data/htdocs/v
rollbackdate=`date +%Y-%m-%d`
now=`date +%Y-%m-%d-%H-%M`
sourcedir=/data/backup/$rollbackdate
Listdir()
{
dir=`echo $1|tr '[:upper:]' '[:lower:]'`
list=`ls $sourcedir| grep $server`
echo -e "\033[31;1m$dir:\033[0m"
for l in $list;do
echo -e "\t\033[32;1m$i\033[0m"
done
}
Action()
{
server=$1
backupdir=$2
# localhost : ( backup --> serverdir )
/usr/bin/rsync -a $sourcedir/$backupdir $dir/
# ( localhost : serverdir ) --> ( remote : server )
echo -e "\033[31;1mExecute the script (rsync_server_to_remote.sh) to RollBack the $server now ...\033[0m"
# 调用/data/script/rsync/rsync_server_to_remote.sh执行更新
(echo "$server" && echo "")| /bin/bash /data/script/rsync/rsync_server_to_remote.sh
}
RollBack()
{
echo -e "\033[31;1mThe Server You Can Choose\033[0m"
for server in ${serverlist[@]};do
echo -e "\t\033[32;1m$server\033[0m"
done
read -p "Your Choice:" server
echo -e "\033[31;1mThe Backup of The $server:\033[0m"
Listdir $server
read -p "Choose The Backup Which You Want To RollBack [default $server]:" choice
: ${choice:="$server"}
Action $server $choice
}
RollBack