SpringBoot启动之shell脚本编写
Springboot程序通常我们会生成一个jar包,那么如何启动这个jar包呢?
下文笔者将一一道来,如下所示
下文笔者将一一道来,如下所示
shell启动springboot的示例的脚本
#!/bin/bash JAVA_OPTIONS_INITIAL=-Xms256M JAVA_OPTIONS_MAX=-Xmx256M _JAR_KEYWORDS=/home/work/apps/java265-admin.jar APP_NAME=java265-admin APPLICATION_FILE=/home/work/config/application.properties APPLICATION_YAML_FILE=/home/work/config/application.yml APPLICATION_YAML_FILE_DB=/home/work/config/application-druid.yml PID=$(ps aux | grep ${_JAR_KEYWORDS} | grep -v grep | awk '{print $2}' ) function check_if_process_is_running { if [ "$PID" = "" ]; then return 1 fi ps -p $PID | grep "java" return $? } case "$1" in status) if check_if_process_is_running then echo -e "\033[32m $APP_NAME is running \033[0m" else echo -e "\033[32m $APP_NAME not running \033[0m" fi ;; stop) if ! check_if_process_is_running then echo -e "\033[32m $APP_NAME already stopped \033[0m" exit 0 fi kill -9 $PID echo -e "\033[32m Waiting for process to stop \033[0m" NOT_KILLED=1 for i in {1..20}; do if check_if_process_is_running then echo -ne "\033[32m . \033[0m" sleep 1 else NOT_KILLED=0 fi done echo if [ $NOT_KILLED = 1 ] then echo -e "\033[32m Cannot kill process \033[0m" exit 1 fi echo -e "\033[32m $APP_NAME already stopped \033[0m" ;; start) if [ "$PID" != "" ] && check_if_process_is_running then echo -e "\033[32m $APP_NAME already running \033[0m" exit 1 fi nohup java -jar $JAVA_OPTIONS_INITIAL $JAVA_OPTIONS_MAX $_JAR_KEYWORDS --spring.config.location=$APPLICATION_FILE,$APPLICATION_YAML_FILE,$APPLICATION_YAML_FILE_DB > `pwd`/nohup.out 2>&1 & echo -ne "\033[32m Starting \033[0m" for i in {1..20}; do echo -ne "\033[32m.\033[0m" sleep 1 done if check_if_process_is_running then echo -e "\033[32m $APP_NAME fail \033[0m" else echo -e "\033[32m $APP_NAME started \033[0m" fi ;; restart) $0 stop if [ $? = 1 ] then exit 1 fi $0 start ;; *) echo "Usage: $0 {start|stop|restart|status}" exit 1 esac exit 0
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。