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