Centos7中Jar快速启动脚本
Centos7中Jar快速启动脚本
创建一个文本,将以下脚本内容复制到文本当中,重命名文本后缀为.sh
注意:根据自己的项目进行更改相关内容,对应注释已说明
#!/bin/sh
APP_NAME=martet-service
#jar包路径
JAR_PATH='/vdb2/service/marketing/'
#jar名称
JAR_NAME=market-1.jar
#日志路径
LOG_PATH='/vdb2/service/marketing/log'
#PID 代表是PID文件
PID=$JAR_NAME\.pid
#使用说明,用来提示输入参数
usage() {
echo "Usage: sh 执行脚本.sh [start|stop|restart|status]"
exit 1
}
#检查程序是否在运行
is_exist(){
pid=`ps -ef|grep $JAR_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 -Xms1024m -Xmx4096m -jar $JAR_PATH/$JAR_NAME >> $LOG_PATH/$APP_NAME.log 2>&1 &
echo $! > $PID
echo ">>> start $APP_NAME successed PID=$! <<<"
fi
}
#停止方法
stop(){
#is_exist
pidf=$(cat $PID)
#echo "$pidf"
echo ">>> PID = $pidf begin kill $pidf <<<"
kill $pidf
rm -rf $PID
sleep 2
is_exist
if [ $? -eq "0" ]; then
echo ">>> PID = $pid begin kill -9 $pid <<<"
kill -9 $pid
sleep 2
echo ">>> $APP_NAME process stopped <<<"
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
start
}
#根据输入参数,选择执行对应方法,不输入则执行使用说明
case "$1" in
"start")
start
;;
"stop")
stop
;;
"status")
status
;;
"restart")
restart
;;
*)
usage
;;
esac
exit 0
将脚本和jar放在同一目录下,然后在该目录下使用./start.sh start 命令进行启动即可
Centos7中Jar快速启动脚本的更多相关文章
- SpringBoot项目jar包启动脚本
startup.bat @echo off set path=X:\xxxxxxx\Java\JDK\jre\bin START "项目名" "%path%\java&q ...
- jar包启动脚本, 以及外置配置文件application.yml
想使用sh脚本来启动,停止,重启我们的jar服务, 顺便还要外置配置文件方便修改 示例server.sh如下,启动命令为sh server.sh start或restart或stop,修改其中的这几个 ...
- jar 包启动脚本
#!/bin/bash JAVA_HOME=/usr/java/default #java虚拟机启动参数 JAVA_OPTS="-server -Xms800m -Xmx800m -Xmn2 ...
- 阿里云服务器CentOS7中Tomcat8.x启动慢问题解决记录
公司服务器刚换CentOS7,在内部的刀片机上一直跑的很溜,迁移到阿里云上后Tomcat启动竟然要6.7分钟!这还了得. 且日志上无任何错误,在日志中查看到如下信息: Log4j:[2015-10-2 ...
- Linux中jar包启动和jar包后台运行
Linux 运行jar包命令如下: 方式一: java -jar shareniu.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定? ...
- 在centos中创建nginx启动脚本
1. 建立脚本文件nginxd [root@could]# vi /etc/init.d/nginxd 插入以下内容 #!/bin/bash## chkconfig: - 85 15# descrip ...
- linux上jar项目启动脚本
---------------启动:start.sh #!/bin/bashcd `dirname $0`BIN_DIR=`pwd`cd ..DEPLOY_DIR=`pwd`CONF_DIR=$DEP ...
- Java jar包启动脚本
#!/bin/bash APP_HOME=/wdcloud/app/rps/rps-module-admin APP_JAR=rps-module-admin-*.jar APP_PIDS=$(ps ...
- docker快速启动脚本
#!/bin/sh PID=$(docker inspect --format "{{.State.Pid}}" $1) nsenter -t $PID -u -i -n -p n ...
- Centos7.x做开机启动脚本
cat /etc/centos-release CentOS Linux release 7.4.1708 (Core) uname -r 3.10.0-693.11.1.el7.x86_64 vim ...
随机推荐
- fzy&czn生日赛t1 CZN
fzy&czn生日赛t1 CZN 膜拜hybb首杀 目录 fzy&czn生日赛t1 CZN 题目背景 题目描述 分析 my code wnag's code 题目 题目背景 有一天,c ...
- 目标检测(Object Detection)
文章目录 目标检测(Object Detection) 一.基本概念 1. 什么是目标检测 2. 目标检测的核心问题 3. 目标检测算法分类 1)Tow Stage 2)One Stage 4. 目标 ...
- .NET 6学习笔记(8)生成自签证书
上一篇我们通过导出IIS Express的自签证书,供ASP.NET Core程序启用HTTPS.本篇我们讨论如何生成自签证书.自签证书的生成,有多种方式.比如OpenSSL或PowerShell都可 ...
- 分享一个提高运维效率的 Python 脚本
哈喽大家好我是咸鱼,今天给大家分享一个能够提升运维效率的 python 脚本 咸鱼平常在工作当中通常会接触到下面类似的场景: 容灾切换的时候批量对机器上的配置文件内容进行修改替换 对机器批量替换某个文 ...
- 爬虫之浏览器指纹ja3_hash的更改
浏览器指纹 反爬中会遇到浏览器指纹,它是不会随着你更换 IP 或者 User-Agent 而改变的.并且他们的指纹每次请求也是固定的.只要网站发现某个拥有特定指纹的客户端持续高频率请求网站,它就可以把 ...
- 2020-10-29:使用redis实现分布式限流组件,要求高并发场景同一IP一分钟内只能访问100次,超过限制返回异常,写出实现思路或伪代码均可。
福哥答案2020-10-29: 简单回答:固定窗口:string.key存ip,value存次数.滑动窗口:list.key存ip,value=list,存每次访问的时间. 中级回答:固定窗口:用re ...
- 2022-08-06:给定一个数组arr,长度为N,arr中所有的值都在1~K范围上, 你可以删除数字,目的是让arr的最长递增子序列长度小于K。 返回至少删除几个数字能达到目的。 N <= 10^4
2022-08-06:给定一个数组arr,长度为N,arr中所有的值都在1~K范围上, 你可以删除数字,目的是让arr的最长递增子序列长度小于K. 返回至少删除几个数字能达到目的. N <= 1 ...
- 2022-05-31:某公司游戏平台的夏季特惠开始了,你决定入手一些游戏。现在你一共有X元的预算。 该平台上所有的 n 个游戏均有折扣,标号为 i 的游戏的原价a_i元,现价只要b_i元, 也就是说该
2022-05-31:某公司游戏平台的夏季特惠开始了,你决定入手一些游戏.现在你一共有X元的预算. 该平台上所有的 n 个游戏均有折扣,标号为 i 的游戏的原价a_i元,现价只要b_i元, 也就是说该 ...
- Elasticsearch与Clickhouse数据存储对比
1 背景 京喜达技术部在社区团购场景下采用JDQ+Flink+Elasticsearch架构来打造实时数据报表.随着业务的发展Elasticsearch开始暴露出一些弊端,不适合大批量的数据查询,高频 ...
- Cesium中监听MOUSE_MOVE事件获取经纬度和高度
有时候在这个圆球上获取精确的经度纬度还不容易,特别是高度 还好在cesium提供了接口,看 let selft = this; const scene = this.viewer.scene; var ...