一个shell脚本用来启动我的项目,内容如下:
pid=`ps -ef|grep credit-info-app.jar |grep -v grep | awk '{print $2}'`
if [ -z "$pid" ];
then
echo "cis server not alive" $pid
else
echo "kill -9 pid:" $pid
kill -9 $pid
fi
nohup /usr/lib/jvm/jdk8u312-b07/jre/bin/java -jar -Xms2048 -Xmx2048 -Dfastson.parser.safeMode=true -Dtesla.boot-config-path=tesla-boot.properties credit-info-app.jar &
问题:启动的时候是通过网站页面点击启动来启动项目,配置好项目的各个路径及启动脚本后,点击启动按钮,项目的状态一直处于启动中,但是我去查进程显示我的项目已经正常启动了,并且可以掉通,我感觉应该是启动脚本一直处于写入nohup日志里,项目是启动完毕了,但是脚本一直没有结束,请问各位这种情况该怎么办
该回答内容部分引用GPT,GPT_Pro更好的解决问题
这种情况可以在shell脚本中加入一个exit语句,将项目启动完毕后,结束脚本,示例如下:
#!/bin/sh
pid=`ps -ef|grep credit-info-app.jar |grep -v grep | awk '{print $2}'`
if [ -z "$pid" ]; then
echo "cis server not alive” $pid
echo "kill -9 pid:”$pid
kill -9 $pid
fi
nohup /usr/lib/jvm/jdksu312-be7/jre/bin/java -jar -Xms2848 -Xmx2648 -Dfastson.parser-safeMode=true -Dtesla-b
echo "CreditInfoApp startup successful" #这里是项目启动成功的提示信息
exit #这里是退出脚本的语句,也就是结束脚本的语句
在上面的脚本中,加入了exit语句,意思是让脚本在项目启动成功之后立即退出,从而解决了脚本一直处于写入nohup日志的问题。
如果回答有帮助,望采纳。
加一个退出脚本命令就可以了。