欢迎来到站圈网!

   as  code/json  ::v-deep  pandas  121

投稿中心

Linux

当前位置:主页 > 服务器教程 > Linux >

Linux中自定义shell脚本启动jar包的方法

时间:2021-01-18|栏目:Linux|点击:

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

创建.sh文件

vi XXX.sh

编写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

给.sh文件授权

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

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

使用命令启动jar

./XXX.sh -start

到此这篇关于Linux中自定义shell脚本启动jar包的文章就介绍到这了,更多相关linux shell脚本启动jar包内容请搜索站圈网以前的文章或继续浏览下面的相关文章希望大家以后多多支持站圈网!

上一篇:使用shell脚本一键部署LNMP架构的方法

栏    目:Linux

下一篇:没有了

本文标题:Linux中自定义shell脚本启动jar包的方法

本文地址:http://www.zhano.cn/server/Linux/29783.html

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:12043006 | 邮箱:12043006#qq.com(#换成@)

Copyright © 2019-2020

Power by DedeCms 豫ICP备19001789号