srv_install.sh 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #!/bin/bash
  2. # 用于开新区
  3. if [[ -z "$1" || ! "$1" =~ ^[0-9]+$ ]]; then
  4. echo "错误: 请输入有效的 zone_id (正整数)。"
  5. exit 1
  6. fi
  7. serverPath=/server #能否获取当前路径作为服务器路径
  8. zone_id=$1
  9. echo -e "获取服务器id: ${zone_id} \n"
  10. ### 下面xxx修改为需要的路径
  11. to_dir=${serverPath}/bin${zone_id}
  12. if [ ! -d "$to_dir" ]; then
  13. # 目录不存在,创建目录
  14. mkdir -p "$to_dir"
  15. cd $to_dir
  16. # 目录不存在,创建目录
  17. mkdir -p "log"
  18. ## 复制 Config ,Main,AdminLogic 三个文件 创建common core excel module 四个软链接
  19. cp -r ${serverPath}/bin/script ${to_dir}
  20. cp -r ${serverPath}/bin/lua51.dll ${to_dir}
  21. cp -r ${serverPath}/bin/logic.exe ${to_dir}
  22. cp -r ${serverPath}/bin/logic ${to_dir}
  23. cp -r ${serverPath}/bin/libgcc_s_dw2-1.dll ${to_dir}
  24. chmod 777 logic
  25. rm -rf ${to_dir}/script/common
  26. rm -rf ${to_dir}/script/excel
  27. rm -rf ${to_dir}/script/module
  28. #cp ${serverPath}/bin/script/Config.lua ${serverPath}/bin${zone_id}/script/Config.lua
  29. #cp ${serverPath}/bin/script/Main.lua ${serverPath}/bin${zone_id}/script/Main.lua
  30. #cp ${serverPath}/bin/script/AdminLogic.lua ${serverPath}/bin${zone_id}/script/AdminLogic.lua
  31. ln -s ${serverPath}/bin/script/common ${serverPath}/bin${zone_id}/script/common
  32. #ln -s ${serverPath}/bin/script/core ${serverPath}/bin${zone_id}/script/core
  33. ln -s ${serverPath}/bin/script/excel ${serverPath}/bin${zone_id}/script/excel
  34. ln -s ${serverPath}/bin/script/module ${serverPath}/bin${zone_id}/script/module
  35. port=$((8191 + zone_id))
  36. port_admin=$((10000 + zone_id))
  37. database_idx=$((350001 + zone_id))
  38. svr_idx=$((810537 + zone_id))
  39. svrName_idx=$((zone_id - 1))
  40. # 替换配置文件
  41. sed -i "24c\PORT_CLIENT = ${port}" ${to_dir}/script/Config.lua
  42. sed -i "25c\PORT_ADMIN = \"${port_admin}\"" ${to_dir}/script/Config.lua
  43. sed -i "28c\DB_NAME = \"ckwy_fy_S${database_idx}\"" ${to_dir}/script/Config.lua
  44. sed -i "31c\SVR_INDEX = ${svr_idx}" ${to_dir}/script/Config.lua
  45. sed -i "32c\SVR_NAME = \"s${svrName_idx}\"" ${to_dir}/script/Config.lua
  46. sed -i "33c\NEW_SVR_INDEX = ${zone_id}" ${to_dir}/script/Config.lua
  47. fi
  48. #启动服务
  49. echo -e "开始启动服务:${zone_id}\n"
  50. cd $to_dir && ${to_dir}/logic