当前位置:   article > 正文

linux shell 脚本批量后台启动jar包_多个jar包启动

多个jar包启动

微服务本地部署时多个jar后台启动,新建sh脚本放入同级目录即可

-Dloader.path=./lib   ./lib为外置jar包目录,目的是方便更新时快速上传新代码,若未配置可自行删除,或自行配置自己的目录

  1. #!/bin/bash
  2. # sh start.sh stop 关闭正在运行
  3. # sh start.sh 直接启动
  4. # sh start.sh sit 指定配置文件(sit)启动
  5. #后台运行jar包 这里替换为你的jar包列表
  6. jar_arr=("karakoram-usercenter-1.0.0.jar" "karakoram-wuyi-1.0.0.jar" "karakoram-inventory-1.0.0.jar" "karakoram-task-1.0.0.jar")
  7. start(){
  8. stop
  9. yaml_name="prd"
  10. if [ ${1} ]
  11. then
  12. yaml_name=${1}
  13. fi
  14. echo ${yaml_name}
  15. for jar_name in ${jar_arr[@]};
  16. do
  17. #启动jar包
  18. if [ ${yaml_name} == "sit" ]
  19. then
  20. #测试环境
  21. nohup java -Dloader.path=./lib -jar -Dspring.profiles.active=sit ${jar_name} >./out/${jar_name}.out 2>&1 &
  22. elif [ ${yaml_name} == "dev" ]
  23. then
  24. #开发环境
  25. nohup java -Dloader.path=./lib -jar -Dspring.profiles.active=dev ${jar_name} >./out/${jar_name}.out 2>&1 &
  26. else
  27. #正式环境
  28. nohup java -Dloader.path=./lib -jar ${jar_name} >./out/${jar_name}.out 2>&1 &
  29. fi
  30. echo ${yaml_name} ${jar_name} start
  31. done
  32. echo "启动完成"
  33. }
  34. stop(){
  35. for jar_name in ${jar_arr[@]};
  36. do
  37. #杀掉正在运行的进程
  38. tpid=`ps -ef|grep $jar_name|grep -v grep|grep -v kill|awk '{print $2}'`
  39. if [ ${tpid} ]
  40. then
  41. echo ${jar_name} ${tpid} kill
  42. kill -9 ${tpid}
  43. fi
  44. done
  45. echo "kill process success"
  46. }
  47. if [ !${1} -a ${1} == "start" ]
  48. then
  49. start ${2}
  50. elif [ ${1} == "stop" ]
  51. then
  52. stop
  53. else
  54. start ${1}
  55. fi

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/180422
推荐阅读
相关标签
  

闽ICP备14008679号