53 lines
No EOL
1.4 KiB
Markdown
53 lines
No EOL
1.4 KiB
Markdown
```
|
|
#!/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
|
|
|
|
``` |