博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux shell脚本启动 停止 重启jar包
阅读量:7087 次
发布时间:2019-06-28

本文共 1404 字,大约阅读时间需要 4 分钟。

 

最近做的微服务jar包想弄在持续集成中自动化部署,所以首先得有一个操作jar包的脚本

只需将jar文件的路径替换到APP_NAME的值就可以了,其他不用改

注意:window编辑的shell文件,通过WinSCP上传的Linux服务器,需要改变文件的格式(查看文件格式,vim编辑后输入 :set ff),还有环境变量,一定要配置啊

修改格式操作步骤:

# vim robotcenter.sh 

然后输入  set:ff=unix

# :wq!  保存退出

 

#!/bin/bashexport JAVA_HOME=/root/tools/jdk1.8.0_181export JRE_HOME=/$JAVA_HOME/jreexport CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin#这里可替换为你自己的执行程序,其他代码无需更改APP_NAME=/root/app/springBoot/robotcenter.jar#使用说明,用来提示输入参数usage() {    echo "Usage: sh robotcenter.sh [start|stop|restart|status]"    exit 1}#检查程序是否在运行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}#启动方法start(){  is_exist  if [ $? -eq 0 ]; then    echo "${APP_NAME} is already running. pid=${pid}"  else    nohup java -jar ${APP_NAME}  >robotcenter.out 2>&1 &  fi}#停止方法stop(){  is_exist  if [ $? -eq "0" ]; then    kill -9 $pid  else    echo "${APP_NAME} is not running"  fi  }#输出运行状态status(){  is_exist  if [ $? -eq "0" ]; then    echo "${APP_NAME} is running. Pid is ${pid}"  else    echo "${APP_NAME} is NOT running."  fi}#重启restart(){  stop  sleep 5  start}#根据输入参数,选择执行对应方法,不输入则执行使用说明case "$1" in  "start")    start    ;;  "stop")    stop    ;;  "status")    status    ;;  "restart")    restart    ;;  *)    usage    ;;esac

 

转载地址:http://xdfql.baihongyu.com/

你可能感兴趣的文章
获取泛型的class 反射
查看>>
input 获取当前id,name
查看>>
linux zip 命令详解
查看>>
HDU 4902 Nice boat(线段树)
查看>>
Codeforces Round #114 (Div. 1) E. Wizards and Bets 高斯消元
查看>>
怎样调通微信支付及微信发货通知接口(Js API)
查看>>
Android 属性动画(Property Animation) 全然解析 (下)
查看>>
推断汉字正則表達式更严谨方法!
查看>>
如何避免误删CleanMyMac语言文件
查看>>
Linux下免安装mysql
查看>>
jquery实现返回基部案例效果
查看>>
快钱报错:javax.net.ssl.SSLProtocolException: handshake alert: unrecognized_name解决
查看>>
Hadoop集群WordCount运行详解(转)
查看>>
[转]SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)
查看>>
一次性搞清楚equals和hashCode
查看>>
Android Studio IDE的 LogCat如何过滤指定应用的调试信息
查看>>
23个常用正则表达式(数值和字符串)
查看>>
struts2中struts.xml配置文件详解
查看>>
Javascript中的with用法
查看>>
GIS-008-ArcGIS JS API 全图
查看>>