123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- #!/bin/bash
- # 待编译的项目
- projects=("wutong-okr.jar")
- APP_NAME=blade-auth.jar
- PROFILES_ACTIVE="$2"
- #使用说嘛,提示用户输入参数
- usage() {
- echo "Usage: sh 执行脚本.sh [start|stop|restart|status]"
- exit 1
- }
- start() {
- for ((i = 0; i < ${#projects[*]}; i++)); do
- APP_NAME=${projects[${i}]}
- init
- done
- }
- #监测程序是否在运行
- is_exist() {
- pid=$(ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}')
- #如果不存在返回1,存在返回0
- if [ -z "${pid}" ]; then
- return 1
- else
- return 0
- fi
- }
- #启动方法
- init() {
- echo "${APP_NAME}"
- is_exist
- if [ $? -eq "0" ]; then
- echo "${APP_NAME} is already running. pid=${pid} ."
- else
- nohup java -Xms1024m -Xmx1024m -jar ${APP_NAME} --spring.profiles.active=${PROFILES_ACTIVE} > ${APP_NAME}_${PROFILES_ACTIVE}.log 2>&1 &
- fi
- }
- #停止方法
- stop() {
- for ((i = 0; i < ${#projects[*]}; i++)); do
- APP_NAME=${projects[${i}]}
- is_exist
- if [ $? -eq "0" ]; then
- kill -9 $pid
- else
- echo "${APP_NAME} is not running"
- fi
- done
- }
- #输出运行状态
- status() {
- for ((i = 0; i < ${#projects[*]}; i++)); do
- APP_NAME=${projects[${i}]}
- is_exist
- if [ $? -eq "0" ]; then
- echo "${APP_NAME} is running. Pid is ${pid}"
- else
- echo "${APP_NAME} is NOT running."
- fi
- done
- }
- #重启
- restart() {
- stop
- start
- }
- #根据输入参数,选择执行对应方法,不输入则执行使用说明
- case "$1" in
- "start")
- start
- ;;
- "stop")
- stop
- ;;
- "status")
- status
- ;;
- "restart")
- restart
- ;;
- *)
- usage
- ;;
- esac
|