main
PC-202302260912\Administrator 2023-07-25 14:29:53 +08:00
parent 05dd59af0c
commit dc7177b69c
1 changed files with 48 additions and 8 deletions

56
main.sh
View File

@ -18,6 +18,11 @@ show_menu() {
echo -e "0. ${RED}退出${NC}" echo -e "0. ${RED}退出${NC}"
} }
show_filer(){
filer=$1
ls -l /data/update/$filer/ |awk '/^d/ {print $NF}'
}
# 定义函数,用于处理用户输入 # 定义函数,用于处理用户输入
handle_input() { handle_input() {
read -p "请输入选项编号: " choice read -p "请输入选项编号: " choice
@ -64,15 +69,17 @@ game(){
echo -e "1. ${YELLOW}打包${NC}" echo -e "1. ${YELLOW}打包${NC}"
echo -e "2. ${YELLOW}单服更新发送${NC}" echo -e "2. ${YELLOW}单服更新发送${NC}"
echo -e "3. ${YELLOW}渠道更新发送${NC}" echo -e "3. ${YELLOW}渠道更新发送${NC}"
echo -e "4. ${YELLOW}单服更新并重启${NC}"
echo -e "5. ${YELLOW}渠道更新并重启${NC}"
echo -e "0. ${GREEN}返回主菜单${NC}" echo -e "0. ${GREEN}返回主菜单${NC}"
read -p "请输入选项编号: " choice read -p "请输入选项编号: " choice
case $choice in case $choice in
1) 1)
echo -e "${YELLOW}打包${NC}" echo -e "${YELLOW}打包${NC}"
ls -l ../project/ show_filer project
stty erase ^h stty erase ^h
read -p "请输入项目地址: " project read -p "请输入项目地址: " project
ls -l ../package/ show_filer package
stty erase ^h stty erase ^h
read -p "请输入包名(不需要带文件后缀): " package read -p "请输入包名(不需要带文件后缀): " package
echo -e "开始打包 项目:$project, 包名:$package" echo -e "开始打包 项目:$project, 包名:$package"
@ -81,7 +88,7 @@ game(){
;; ;;
2) 2)
echo -e "${YELLOW}单独发送${NC}" echo -e "${YELLOW}单独发送${NC}"
ls -l ../package/ show_filer package
stty erase ^h stty erase ^h
read -p "请输入包名(不需要带文件后缀): " package read -p "请输入包名(不需要带文件后缀): " package
stty erase ^h stty erase ^h
@ -92,10 +99,34 @@ game(){
;; ;;
3) 3)
echo -e "${YELLOW}渠道发送${NC}" echo -e "${YELLOW}渠道发送${NC}"
ls -l ../package/ show_filer package
stty erase ^h stty erase ^h
read -p "请输入包名(不需要带文件后缀): " package read -p "请输入包名(不需要带文件后缀): " package
ls -l ./txt/ show_filer script/txt
stty erase ^h
read -p "请输入文件名称(不需要带文件后缀): " iptxt
echo -e "开始发送 包名:$package, 渠道:$iptxt"
send_many_ip $package $iptxt
game
;;
4)
echo -e "${YELLOW}单独发送并重启${NC}"
show_filer package
stty erase ^h
read -p "请输入包名(不需要带文件后缀): " package
stty erase ^h
read -p "请输入游戏服ip: " ip
echo -e "开始发送 包名:$package, ip:$ip"
send_one_ip $package $ip
ssh $ip "bash /data/jieling/server/bin/reboot.sh core1"
game
;;
5)
echo -e "${YELLOW}渠道发送并重启${NC}"
show_filer package
stty erase ^h
read -p "请输入包名(不需要带文件后缀): " package
show_filer script/txt
stty erase ^h stty erase ^h
read -p "请输入文件名称(不需要带文件后缀): " iptxt read -p "请输入文件名称(不需要带文件后缀): " iptxt
echo -e "开始发送 包名:$package, 渠道:$iptxt" echo -e "开始发送 包名:$package, 渠道:$iptxt"
@ -132,6 +163,7 @@ send_one_ip(){
send_many_ip(){ send_many_ip(){
package=${1}.tar.gz package=${1}.tar.gz
iptxt=${2}.txt iptxt=${2}.txt
reboot=$3
for i in `awk '{print $2}' /data/update/script/txt/$iptxt` for i in `awk '{print $2}' /data/update/script/txt/$iptxt`
do do
echo "正在处理服务器 $i " echo "正在处理服务器 $i "
@ -139,6 +171,11 @@ send_many_ip(){
ssh "$i" "tar -zxvf $destination_dir/$package -C $destination_dir/jieling/server/" ssh "$i" "tar -zxvf $destination_dir/$package -C $destination_dir/jieling/server/"
ssh "$i" "rm -rf $destination_dir/$package" ssh "$i" "rm -rf $destination_dir/$package"
echo "处理完成服务器 $i " echo "处理完成服务器 $i "
if [ ! -z $reboot ];then
ssh "$i" "supervisorctl restart all"
echo "重启服务器 $i "
fi
done done
} }
@ -153,7 +190,7 @@ gm(){
case $choice in case $choice in
1) 1)
echo -e "${YELLOW}单渠道更新${NC}" echo -e "${YELLOW}单渠道更新${NC}"
ls -l ../project/ show_filer project
stty erase ^h stty erase ^h
read -p "请输入表所在游戏项目地址: " project read -p "请输入表所在游戏项目地址: " project
stty erase ^h stty erase ^h
@ -164,7 +201,7 @@ gm(){
;; ;;
2) 2)
echo -e "${YELLOW}多渠道更新${NC}" echo -e "${YELLOW}多渠道更新${NC}"
ls -l ../project/ show_filer project
stty erase ^h stty erase ^h
read -p "请输入项目地址: " project read -p "请输入项目地址: " project
echo -e "开始更新gm" echo -e "开始更新gm"
@ -205,6 +242,7 @@ login(){
ssh $ip "bash /usr/local/apache-tomcat-7.0.79/bin/shutdown.sh" ssh $ip "bash /usr/local/apache-tomcat-7.0.79/bin/shutdown.sh"
sleep 3 sleep 3
ssh $ip "bash /usr/local/apache-tomcat-7.0.79/bin/startup.sh" ssh $ip "bash /usr/local/apache-tomcat-7.0.79/bin/startup.sh"
ssh $ip "jps -m"
login login
;; ;;
0) 0)
@ -223,7 +261,7 @@ pay(){
echo -e "================================" echo -e "================================"
echo -e "开始更新${GREEN}支付服${NC}" echo -e "开始更新${GREEN}支付服${NC}"
echo -e "1. ${YELLOW}更新支付服代码${NC}" echo -e "1. ${YELLOW}更新支付服代码${NC}"
echo -e "1. ${YELLOW}重启支付服${NC}" echo -e "2. ${YELLOW}重启支付服${NC}"
echo -e "0. ${GREEN}返回主菜单${NC}" echo -e "0. ${GREEN}返回主菜单${NC}"
read -p "请输入选项编号: " choice read -p "请输入选项编号: " choice
case $choice in case $choice in
@ -239,6 +277,7 @@ pay(){
read -p "请输入支付服ip: " ip read -p "请输入支付服ip: " ip
echo -e "开始重启支付服 ip:$ip" echo -e "开始重启支付服 ip:$ip"
ssh $ip "bash /data/jieling/delivery-server/pay_restart.sh" ssh $ip "bash /data/jieling/delivery-server/pay_restart.sh"
ssh $ip "jps -m"
login login
;; ;;
0) 0)
@ -273,6 +312,7 @@ mingan(){
read -p "请输入敏感词服ip: " ip read -p "请输入敏感词服ip: " ip
echo -e "开始重启敏感词服 ip:$ip" echo -e "开始重启敏感词服 ip:$ip"
ssh $ip "bash /data/jieling/sensitiveWordFilter/bin/mingan_reboot.sh" ssh $ip "bash /data/jieling/sensitiveWordFilter/bin/mingan_reboot.sh"
ssh $ip "jps -m"
login login
;; ;;
0) 0)