首页 > 编程语言 > 详细

基于.sh脚本启动Java 相关jar包

时间:2021-05-20 00:06:42      阅读:17      评论:0      收藏:0      [点我收藏+]

1.一键启动、停止、重启 java项目

2.创建.sh文件

vi XXX.sh

3.编写shell脚本

#!/bin/sh
port=8080 #定义变量等号左右不能有空格
jar_name=/opt/oaclou/XXX.jar
 
#运行脚本提示信息
tips(){
    echo "-------------------------------------"
    echo ""
    echo "项目端口: ${port}"
    echo "项目地址: ${jar_name}"
    echo ""
    echo "你可以使用如下参数进行操作"
    echo "-status -查看当前项目运行状态"
    echo "-start  -启动当前项目"
    echo "-stop  -停止当前项目"
    echo "-restart -重启当前项目"
    echo ""
    echo "-------------------------------------"
}
 
#查看状态
status(){
    #查询端口的PID {print $7}-取出打印的第七个值
    pid=`netstat -apn |grep $port |awk ‘{print $7}‘ |cut -d/ -f 1`
    #判断端口是否被占用
    if [ -z "${pid}" ];then
        echo "没有项目在运行"
    else
        echo "项目正在运行中"
    fi
}
 
#启动项目
start(){
    pid=`netstat -apn |grep $port |awk ‘{print $7}‘ |cut -d/ -f 1`
    if [ -z "${pid}" ];then
        echo "正在启动......"
        java -jar -Xms1024m -Xmx1024m $jar_name
    else
        echo "项目运行中或端口已被占用"
    fi
 
}
 
#停止项目
stop(){
    pid=`netstat -apn |grep $port |awk ‘{print $7}‘ |cut -d/ -f 1`
    if [ -z "${pid}" ];then
        echo "没有项目在运行,请先启动"
    else
        kill -9 $pid
        echo "已杀死端口为 ${port} 的应用"
    fi
}
 
#重启项目
restart(){
    pid=`netstat -apn |grep $port |awk ‘{print $7}‘ |cut -d/ -f 1`
    echo "正在杀死端口 ${port} 的pid ${pid} 中..."
    if [ -z "${pid}" ];then
        echo "项目未启动"
    else
        kill -9 $pid
    fi
    sleep 5 #睡眠五秒
    start  #调用启动方法
    echo "项目重启成功!"
}
 
#参数选项
case "$1" in
    "-status")
     status
     ;;
    "-start")
     start
     ;;
    "-stop")
     stop
     ;;
    "-restart")
     restart
     ;;
    *)
     tips
     ;;
esac
exit 0 

4.给.sh文件授权

此时创建的文件还是普通文本,颜色为灰色,需要给文件授权让文件变成可运行文件,绿色的

#授予文件最大权限
chmod 777 XXX.sh

5.使用命令启动jar

./XXX.sh -start
大家好,我是爱写博客的小海,此处是一个小结,如有问题及时评论联系沟通,谢谢。

基于.sh脚本启动Java 相关jar包

原文:https://www.cnblogs.com/emmetyang/p/14785928.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!