jar包控制脚本1

#!/bin/bash
export JAVA_HOME=/u01/java_home/jdk1.8.0_181
export APP_HOME=/u01/test
export APP_NAME=mzyzsjz-server-0.0.1-SNAPSHO.jar
export PROG=test

function getPid {
PID=`ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}'|awk 'NR==1'`
} getPid
case $1 in
start)
if [ ! $PID ];then
nohup $JAVA_HOME/bin/java -jar $APP_HOME/$APP_NAME >> $APP_HOME/logs/catalina.`date +%Y-%m-%d`.out 2>&1 &
echo "starting"
sleep 1
getPid
echo -e "$PROG is \033[32mActive\033[0m, PID = $PID"
else
echo "$PROG is exist, PID = $PID"
fi
;;
stop)
if [ $PID ];then
kill -15 $PID
echo "stoping..."
sleep 1
getPid
echo -e "$PROG is \033[31mDead\033[0m"
else
echo "$PROG is not exist"
fi
;;
restart)
echo "restarting..."
if [ $PID ];then
kill -15 $PID
sleep 3
nohup $JAVA_HOME/bin/java -jar $APP_HOME/$APP_NAME >> $APP_HOME/logs/catalina.`date +%Y-%m-%d`.out 2>&1 &
getPid
echo -e "$PROG is \033[32mRestart\033[0m, PID = $PID"
else
nohup $JAVA_HOME/bin/java -jar $APP_HOME/$APP_NAME >> $APP_HOME/logs/catalina.`date +%Y-%m-%d`.out 2>&1 &
sleep 1
getPid
echo -e "$PROG is \033[32mRestart\033[0m, PID = $PID"
fi
;;
*)
echo "Usage:{$0 start|stop|restart}"
;;
esac
exit 0

jar包控制脚本2

#!/bin/bash
export JAVA_HOME=/u01/java_home/jdk1.8.0_181
export APP_HOME=/u01/yzsjz
export APP_NAME=mzyzsjz-server-0.0.1-SNAPSHOT.jar
export PROG=yzsjz function getPid {
PID=`ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}'|awk 'NR==1'`
} getPid
case $1 in
start)
if [ ! $PID ];then
nohup $JAVA_HOME/bin/java -jar $APP_HOME/$APP_NAME >> $APP_HOME/logs/catalina.`date +%Y-%m-%d`.out 2>&1 &
echo "starting..."
sleep 1
getPid
echo -e "$PROG is \033[32mActive\033[0m, PID = $PID"
else
echo "$PROG is exist, PID = $PID"
fi
;;
stop)
if [ $PID ];then
kill -15 $PID
echo "stoping..."
sleep 1
getPid
echo -e "$PROG is \033[31mDead\033[0m"
else
echo "$PROG is not exist"
fi
;;
restart)
echo "restarting..."
if [ $PID ];then
kill -15 $PID
sleep 2
nohup $JAVA_HOME/bin/java -jar $APP_HOME/$APP_NAME >> $APP_HOME/logs/catalina.`date +%Y-%m-%d`.out 2>&1 &
getPid
echo -e "$PROG is \033[32mRestart\033[0m, PID = $PID"
else
nohup $JAVA_HOME/bin/java -jar $APP_HOME/$APP_NAME >> $APP_HOME/logs/catalina.`date +%Y-%m-%d`.out 2>&1 &
sleep 1
getPid
echo -e "$PROG is \033[32mRestart\033[0m, PID = $PID"
fi
;;
check)
if [ -d $JAVA_HOME ]; then
echo -e "$JAVA_HOME \033[32mgood JAVA_HOME\033[0m"
else
echo -e "$JAVA_HOME \033[31mbad JAVA_HOME\033[0m"
fi
if [ -d $APP_HOME ]; then
echo -e "$APP_HOME \033[32mgood APP_HOME\033[0m"
if [ -f $APP_HOME/$APP_NAME ]; then
echo -e "$APP_NAME \033[32mgood APP_NAME\033[0m"
else
echo -e "$APP_NAME \033[31mbad APP_NAME\033[0m"
fi
else
echo -e "$APP_HOME \033[31mbad APP_HOME\033[0m"
fi
;;
log)
tail -500f $APP_HOME/logs/catalina.`date +%Y-%m-%d`.out
;;
*)
echo "Usage:{$0 start|stop|restart|check|log}"
;;
esac
exit 0

 jar包控制脚本改进(端口启停监听)

#!/bin/bash
# chkconfig: 2345 10 90
# auther by wangxp export JAVA_HOME=/u01/java_home/jdk1.8.0_181
export APP_HOME=/u01/yzsjz
export APP_NAME=mzyzsjz-server-0.0.1-SNAPSHOT.jar
export PROG=yzsjz function getPid(){
sleep 0.5
PID=`ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}'|awk 'NR==1'`
echo "$APP_HOME/logs/catalina.`date +%Y-%m-%d`.out" > $APP_HOME/logs/currentlog.pid
} function checkProg(){
t=0
while (($PID))
do
t=$[$t+1]
if [ $1 == "start" ];then
if [ "`ss -ntlp |grep $PID`" ]; then
echo -e "\nstarted"
PORT=`ss -ntlp |grep $PID|awk 'NR==1 {print $4}'|cut -d: -f4`
break
else
echo -ne "\rstarting...$t"
sleep 1
fi
fi
if [ $1 == "stop" ];then
if [ "`ss -ntlp |grep $PID`" ]; then
echo -ne "\rstopping...$t"
sleep 1
else
echo -e "\nstopped"
break
fi
fi
done
} if [ `whoami` == "root" ];then
getPid
case $1 in
start)
if [ ! $PID ];then
nohup $JAVA_HOME/bin/java -jar $APP_HOME/$APP_NAME >> $APP_HOME/logs/catalina.`date +%Y-%m-%d`.out 2>&1 &
getPid
checkProg "start"
echo -e "$PROG is \033[32mActive\033[0m, PID = $PID , PORT= $PORT"
else
echo "$PROG is exist, PID = $PID"
fi
;;
stop)
if [ $PID ];then
kill -15 $PID
getPid
checkProg "stop"
echo -e "$PROG is \033[31mDead\033[0m"
else
echo "$PROG is not exist"
fi
;;
restart)
if [ $PID ];then
kill -15 $PID
checkProg "stop"
nohup $JAVA_HOME/bin/java -jar $APP_HOME/$APP_NAME >> $APP_HOME/logs/catalina.`date +%Y-%m-%d`.out 2>&1 &
getPid
checkProg "start"
echo -e "$PROG is \033[32mRestart\033[0m, PID = $PID , PORT= $PORT"
else
nohup $JAVA_HOME/bin/java -jar $APP_HOME/$APP_NAME >> $APP_HOME/logs/catalina.`date +%Y-%m-%d`.out 2>&1 &
getPid
checkProg "start"
echo -e "$PROG is \033[32mRestart\033[0m, PID = $PID , PORT= $PORT"
fi
;;
check)
if [ -d $JAVA_HOME ]; then
echo -e "$JAVA_HOME \033[32mgood JAVA_HOME\033[0m"
$JAVA_HOME/bin/java -version
else
echo -e "$JAVA_HOME \033[31mbad JAVA_HOME\033[0m"
fi
if [ -d $APP_HOME ]; then
echo -e "$APP_HOME \033[32mgood APP_HOME\033[0m"
if [ -f $APP_HOME/$APP_NAME ]; then
echo -e "$APP_NAME \033[32mgood APP_NAME\033[0m"
else
echo -e "$APP_NAME \033[31mbad APP_NAME\033[0m"
fi
else
echo -e "$APP_HOME \033[31mbad APP_HOME\033[0m"
fi
;;
log)
tailf -500 `cat $APP_HOME/logs/currentlog.pid`
;;
*)
echo "Usage:{$0 start|stop|restart|check|log}"
;;
esac
else
echo "you must use root to execute"
fi
exit 0

jar包启停shell脚本的更多相关文章

  1. nginx启停shell脚本

    #!/bin/bash # 编写 nginx 启动脚本 # 本脚本编写完成后,放置在/etc/init.d/目录下,就可以被 Linux 系统自动识别到该脚本 # 如果本脚本名为/etc/init.d ...

  2. 编写Redis启停服务脚本

    脚本内容如下; fi   esac   exit$RETVAL 下载脚本:艺搜下载 将下载下来的脚本放在/etc/init.d/目录下 更改脚本权限 chmod 777 /etc/init.d/red ...

  3. Redis windows版本的启停bat脚本命令

    Reids windows版本安装 redis windows官网推荐:https://github.com/MicrosoftArchive/redis/releases 下载解压即可. 启停bat ...

  4. SpringBoot打成的jar包发布,shell关闭之后一直在服务器运行

    1:可以编写shell脚本, 切换到执行的jar包目录,然后使用nohup  让改命令在服务器一直运行 #!/bin/bash cd /srv/ftp/public nohup java -jar l ...

  5. 使用jar命令打jar/war包、创建可执行jar包、运行jar包、及批处理脚本编写

    jar 命令 jar 是一个jar.exe可执行命令,即可以生成jar文件,也可以生成war文件   使用示例:jar -cvf ../xxx.jar *  -c   create,创建新的归档文档 ...

  6. shell启停服务脚本模板

    一. 启动脚本模板:符合幂等性 如果该服务已经启动,再次调用该脚本,不会报错,也就是说可以反复多次调用,另外启动成功返回 一个参数,提供给自动发布平台校验该服务是否启动 #!/bin/bash ins ...

  7. 编写Nginx启停服务脚本

    在/etc/init.d/目录下创建脚本 vim /etc/init.d/nginx 编写脚本内容:(其中下面2行需要根据情况自行修改) nginxd=/opt/nginx/sbin/nginx ng ...

  8. spring boot 以jar的方式启动常用shell脚本

    用spring boot框架做的项目,将第三方包全部打在jar里面,通过shell脚本启动和停止服务,常用的shell脚本模板如下: #!/bin/bashJAVA_OPTIONS_INITIAL=- ...

  9. 04. 启停redis服务

    启动 查看redis.conf文件,可以通过general中的说明,配置通过systemd来启停redis和查看redis状态(作者没有采用,而是使用service管理,service配置参考< ...

  10. linux上jar包的运行

    指定目录: #!/bin/bash source /etc/profile log() { echo `date +[%Y-%m-%d" "%H:%M:%S]` $1 } log ...

随机推荐

  1. MongoDB学习笔记之 第1章 MongoDB的安装

    MongoDB学习笔记之 第1章 MongoDB的安装 MongoDB学习笔记之 第2章 MongoDB的增删改查 MongoDB学习笔记之 第3章 MongoDB的Java驱动 MongoDB学习笔 ...

  2. Java通用分页

    一. 要分页我们必须要有数据库,所以我们先准备下数据库,其数据库脚步如下: --以下是创建数据库和数据库表以及向数据库插入数据  use master   Go   if exists(select ...

  3. Nuxt.js 应用中的 webpack:progress 事件钩子

    title: Nuxt.js 应用中的 webpack:progress 事件钩子 date: 2024/11/27 updated: 2024/11/27 author: cmdragon exce ...

  4. web移动端常见问题(二)

    1.input光标颜色 默认情况下,光标颜色与字体颜色color相同,但也可以通过caret-color属性来单独设置 但是IOS的光标与字体颜色无关,默认是蓝色 可以单独设置光标颜色,这样ios也有 ...

  5. cryptohack RSA部分

    1.Salty: 此题为rsa加密中e=1的情况,由于\(ed(mod phi)=1\),所以d自然是等于1的,不用分解n就解出了d from Crypto.Util.number import lo ...

  6. Winform多线程持续读取PLC数据

    1.Winform窗体界面 2.后台代码 点击查看代码 using Modbus.Device; using System; using System.Collections.Generic; usi ...

  7. win7下使用Aero2主题错误

    开发了一个gui工具,有同事在win7环境下发现界面无法加载出来. 经过调试发现,在view初始化的过程中,提示PresentationFramework.Aero2无法加载,异常信息如下: {Sys ...

  8. jmeter使用jdbc连接SQL server,执行SQL报错处理

    前置环境参数:jdk-8u391-windows-x64,驱动:sqljdbc4.jar 备注:这是解决后的截图,将就用 问题一:使用jmeter5.5,使用jdbc连接SQL server,执行SQ ...

  9. HttpClientFactory in ASP.NET Core 2.1 Part 5: 日志

    HttpClientFactory in ASP.NET Core 2.1 Part 5: 日志 原文地址:https://www.stevejgordon.co.uk/httpclientfacto ...

  10. 零基础快速入门WebRTC:基本概念、关键技术、与WebSocket的区别等

    本文引用自Hussein Nasser的两个视频分享,原文内容由卢冰聪翻译整理,即时通讯网收录时有大量修订和重新排版. 1.内容概述 本文是专为学习开源实时音视频工程WebRTC的入门者编写的速成指南 ...