首页 > 系统相关 >非常不错的springboot启动shell脚本

非常不错的springboot启动shell脚本

时间:2023-05-30 11:31:47浏览次数:42  
标签:脚本 shell springboot process 32m running 033 echo 0m


#!/bin/bash
JAVA_OPTIONS_INITIAL=-Xms256M
JAVA_OPTIONS_MAX=-Xmx256M
_JAR_KEYWORDS=/wls/appsystem/ruoyi/apps/ruoyi-admin.jar
APP_NAME=ruoyi-admin
APPLICATION_FILE=/wls/appsystem/ruoyi/config/application.properties
APPLICATION_YAML_FILE=/wls/appsystem/ruoyi/config/application.yml
APPLICATION_YAML_FILE_DB=/wls/appsystem/ruoyi/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


标签:脚本,shell,springboot,process,32m,running,033,echo,0m
From: https://blog.51cto.com/u_13538361/6377587

相关文章

  • 通用巡检脚本
    #CPU、内存、硬盘部分,部分awk取值需要根据实际情况修改#进程需要选择要关注的进程#数据库部分,如无巡检备机状态需要,可修改为mysql-u-p-h[备机ip]来远程检查#会在指定位置生成一个当日的.log文件,内部有命令执行的结果部分1#!/bin/bash23./etc/init.d/functions4......
  • Linux 06 Shell
    Shell脚本脚本声明#!/bin/bash脚本注释#examplescript脚本命令uptimefree-hreboot脚本执行$catxiaoxian.sh#!/bin/bash#xiaoxian.sh#thisscriptistest#2023-05-09datels-lfree-huname-a$bashxiaoxian.sh接收用户输入$catha......
  • Shell - shell中的运算符
    基本语法使用案例   基本语法$((运算式))$[运算式]  使用案例#第一种写法a=10b=20c=`expr${a}+${b}`echo"$c"#第二种写法c=$[`expr10+20`]echo"$c"#第三种写法c=$[10+20]echo"$c"#计算3加2的值expr3+2#计算3减2的值e......
  • 检测CPU,内存,磁盘使用率shell
    检测CPU,内存,磁盘使用率shell 1.检测CPU,内存,磁盘使用率超过80%,则发送邮件告警#!/bin/bash#当前主机ipHOST=$(ipashoweth0|grep'\inet\b'|awk'{print$2}'|sed's/\/.*//')#告警邮箱[email protected]#磁盘使用百分比阈值DISK_USAGE_THRESHOLD=80#CPU......
  • SpringBoot i18n 配置
    概述由于项目需要进行国际化提示,所以做了一下SpringBoot的i18n的配置。有两种方式实现i18n的配置操作页面每次访问后端都携带用户设定的语言类型的i18n国际化操作。在请求URL中设置一个字段?language=zh_CN的方式实现或者请求头中设置表明语言类型都行Accept-Language:......
  • 基于JAVA的springboot+vue医院信息管理系统、医院挂号管理系统,附源码+数据库+论文+PPT
    1、项目介绍任何系统都要遵循系统设计的基本流程,本系统也不例外,同样需要经过市场调研,需求分析,概要设计,详细设计,编码,测试这些步骤,基于java语言设计并实现了医院信管系统。该系统基于B/S即所谓浏览器/服务器模式,应用java技术,选择MySQL作为后台数据库。系统主要包括首页,个人中心,用户......
  • springboot集成themeleaf报Namespace 'th' is not bound问题的解决
    问题描述在我们想要在html前端页面使用th:符号时,发现他一直报错问题解决在html标签的最上方,也就是这里:加上这样一句代码:(加在html标签里面!!!)xmlns="http://www.w3.org/1999/xhtml"xmlns:th="http://www.thymeleaf.org"这样就能够解决这个问题啦!......
  • Shell脚本开发项目
    一、日志文件的备份和还原shell脚本:客户机:1、通过修改配置文件,来实现发送日志到远程服务器 vim/etc/rsyslog.conf*.*@@remote…前面的*服务名称(日志文件)后面的*代表等级@@TCP协议发送写入登录日志的服务 authpriv.*@@192.168.134.130:514(远程服务器的ip和端口)2.临时关闭防火......
  • linux运维之bash脚本编程
    算法+数据结构=程序编程语言分类:低级语言:机器语言:二进制码,0、1汇编语言:用一些容易理解和记忆的缩写单词来代替一些特定的指令高级语言:解释型语言:源代码-->编译-->得到二进制可执行文件-->执行eg:PHP、Python、Shell编译型语言:源代码-->执行eg:Java、C、C++、Golang动态编译语言不......
  • Shell脚本实战(一)
    1、前言Shell脚本的语法规则不复杂,在Linux系统很重要,一些操作可以整合成一个shell脚本,节省时间,本文不去讲述shell的语法规则,相关的资料网上很多,只需要多使用即可,此处记录在实际工作中用到shell脚本,积累一些常用的用法,后续也可以参考。2、功能点因为项目原因,c++代码体系非常庞大......