linux自动化部署jar包脚本

14 篇文章 0 订阅

准备工作

安装nohup

#浏览器访问如下地址,搜索 coreutils  下载coreutils-8.22-24.el7.x86_64.rpm
https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/
#上传rpm到目标服务器,执行安装命令
rpm -ivp coreutils-8.22-24.el7.x86_64.rpm --force --nodeps
#检查是否安装成功
rpm -qa | grep coreutils
nohup --vesrion

编写脚本

随便起名,此处 vi  run.sh

#!/bin/sh
#name:jar包启动脚本;使用示例  sh run.sh start
#date:2022-8-18;
#author:dongwn

#jar包名称:
APP_NAME=test-1.0-SNAPSHOT.jar
#脚本菜单项
usage() {
 echo "Usage: sh 脚本名.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
#此处注意修改jar和log文件文件位置:
 nohup java -jar /root/$APP_NAME > test.log   2>&1 &
#此处打印log日志:
 tail -f /root/test.log
 fi
}
#停止脚本
stop(){
 is_exist
 if [ $? -eq "0" ]; then
 kill -9 $pid
 else
 echo "${APP_NAME} is not running"
 fi
}
#显示当前jar运行状态
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

运行脚本

sh  run.sh start

日志与验证

cd到test.log所在路径 ,执行以下命令查看日志情况

tail -f  test.log 

查看端口情况

netstat -lntp

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值