Linux重启java服务脚本

1.spingboiot项目基础版本

SUM=`ps -ef|grep admin-center-0.0.1-SNAPSHOT.jar|grep -v start|grep -v grep| wc -l`
if [ $SUM -gt 0 ];
 then
ps -ef|grep admin-center-0.0.1-SNAPSHOT.jar|grep -v start|grep -v grep|awk '{print $2}'|xargs kill -9
else
 echo "no exist"
fi
nohup /usr/local/jdk1.8.0_121/bin/java -jar -Dlog4j2.formatMsgNoLookups=true -Xms2048m -Xmx2048m   /pony/application/appcenter/admin-center-0.0.1-SNAPSHOT.jar > /pony/logs/appcenter/appcenter.log 2>&1 &

1.  grep -v grep排除包含grep内容的所有内容
2.  wc -l  显示所有符合条件的行数
1+2效果是查找smartcity-sociaty-center-0.0.1-SNAPSHOT.jar这个所有的行数,但是排除调grep,start所在的行
3.  | awk '{print $2}' 查找进程号   
4.  xargs 传递参数,将左边获得的参数传递给右边
3+4效果是查找出符合条件的进程,然后作为kill -9  需要的参数传入
5.  2>&1 1:代表标准输出文件 2:代表错误输出文件 2>&1 = 将错误文件也重定向到标准文件
6.  最后一个& 代表结尾,当前窗口不被锁定,但是 一般 nohup 都是要搭配 结尾&使用 
当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中,除非另外指定了输出文件

2.spingboiot项目:   一个主机有多个同样的工程,使用不同端口号启动的

此时想要在脚本里同时查找所有相项目对应的进程号并全部关闭,就必须在打印进程号的语法上进行修改了,核心是这个 '{printf "%s ", $2}'

SUM=`ps -ef|grep mobile.jar |grep -v start|grep -v grep| wc -l`
if [ $SUM -gt 0 ];
 then
ps -ef|grep mobile.jar|grep -v start|grep -v grep|awk '{printf "%s ", $2}'|xargs kill -9
else
 echo "no exist"
fi


nohup /usr/local/jdk1.8.0_121/bin/java -jar -Dlog4j2.formatMsgNoLookups=true -Xms2048m -Xmx2048m  /pony/application/appcenter/mobile.jar > /pony/logs/appcenter/appcenter.log 2>&1 &

3. ssm项目

停止脚本如下,可以再根据实际需要补充启动工程命令

ps -ef|grep apache-tomcat-screen|grep -v grep|awk '{print $2}'|xargs kill -9      
           //grep -v start不需要,因为start是在目标里面包含了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值