Spring Boot 应用,自定义启停 Java 进程脚本。
完整脚本
#!/bin/bash
# 需要变更的参数
# 先查看java绝对路径:which java
java=/usr/bin/java
STARTUP="$java -server -Xms1024m -Xmx1024m -jar "
PROJECT="pre-diagnose/manager"
# Jar 目录
JAR=`ls /home/$PROJECT/*.jar -th |head -1`
cd /home/$PROJECT
function start () {
nohup $STARTUP $JAR >> /home/$PROJECT/logs/manager.log 2>&1 &
exit 0
}
function stop () {
PID=`ps aux|grep "$JAR"|grep -v grep|awk '{print $2}'`
if [ -z $PID ];then
exit 0
else
kill -9 $PID
fi
}
function reload () {
PID=`ps aux|grep "$JAR"|grep -v grep|awk '{print $2}'`
if [ -z $PID ];then
exit 0
else
kill -1 $PID
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
stop
sleep 3
start
;;
*)
echo "start|stop|reload|restart"
;;
esac
脚本说明
查看进程并输出进程号
ps aux|grep "$JAR"|grep -v grep|awk '{print $2}'
grep -v
:排除输出
awk '{print $2}'
:输出第二列的值
启动脚本
# 堆最小为128m,最大为128m
nohup java -jar -Xms128m -Xmx128m conv-manager-provider.jar > manager.log 2>&1 &
停止脚本
kill -15 `ps -aux|grep conv-manager-provider.jar|grep -v grep|awk '{print $2}'`
更多内容请访问:IT源点
注意:本文归作者所有,未经作者允许,不得转载