Linux使用脚本命令停止和启动jar

停止jar的sh文件名 settlement-backend-stop.sh

内部代码

SPRINGBOOT_JAR_NAME='settlement-backend.jar'
PIDS=`ps -ef | grep "$SPRINGBOOT_JAR_NAME" | grep java |awk '{print $2}'`
if [ -z "$PIDS" ]; then
  echo "警告: $SPRINGBOOT_JAR_NAME 未启动!"
  exit 1
fi
echo -e "正在停止 $SPRINGBOOT_JAR_NAME 进程[PIDS] ...\c"
for PID in $PIDS ; do
  kill $PID > /dev/null 2>&1
done
COUNT=0
while [ $COUNT -lt 1 ]; do
  echo -e "......\c"
  sleep 2
  COUNT=1
  for PID in $PIDS ; do
    PID_EXIST=`ps -f -p $PID | grep java`
    if [ -n "$PID_EXIST" ]; then
      COUNT=0
      break
    fi
  done
done
echo "$SPRINGBOOT_JAR_NAME 进程[PIDS], 已停止!"

启动jar的sh文件名 settlement-backend-start.sh

内部代码

/data/jdk1.8.0_231/bin/java -Xms5G -Xmx5G -XX:MetaspaceSize=256M -XX:+UseG1GC -Djava.security.egd=file:/dev/./urandom -Duser.timezone=Asia/shanghai -XX:OnOutOfMemoryError="/data/jdk1.8.0_231/bin/jstack -F %p >> ./logs/jstack-settlement-backend.log" -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./logs/settlement-backend-OOM.dump -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -Xloggc:./logs/settlement-backend-gc.gc  -jar /data/settlement-backend.jar > /data/logs/settl-console.log 2>&1 &

在linux上使用脚本:

# sh settlement-backend-stop.sh
# sh settlement-backend-start.sh



或者直接停止并启动的脚本:

cd /opt/workspace/im
tomcat_pid=`netstat -lntp | grep :9999 | awk '{printf $7}'|cut -d/ -f1`
[ -n "$tomcat_pid" ] && kill -9 $tomcat_pid
nohup java -jar -Dspring.profiles.active=sit  -Djava.io.tmpdir=/opt/workspace/im/tmpfile im-web-1.0.jar > /dev/null 2>&1 &
全部评论

相关推荐

02-14 12:40
门头沟学院 Java
程序员花海:1.面试要求必须Java笔试不一定 2.难度对等秋招 远超于日常实习是因为同一批次且转正很多 竞争压力大 3.第一个加点指标,上线了就把接口性能加上去 使用本地缓存这个不算亮点 只是技术选型,要把为什么采用这个和背后的思考写出来而不是单纯堆叠技术没意义 4.八股要一直看 很容易忘记 5.拼团交易这个老问题 堆积技术 另外建议你把奖项合并到教育背景 没必要拆出来放最后
我的简历长这样
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务