1:如果出现错误如下,解释器错误之类的,可以执行sed -i ‘s/\r$//’ door_start.sh,这个错误是因为脚本文件包含了Windows的换行符(^M)。在麒麟系统(基于Linux)中,我们需要将文件格式转换为Unix格式

[root@FKFWQ2 door]# ./door_start.sh
-bash: ./door_start.sh:/bin/sh^M:解释器错误: 没有那个文件或目录
[root@FKFWQ2 door]# ^C
[root@FKFWQ2 door]# sed -i 's/\r$//' door_start.sh
[root@FKFWQ2 door]#

1-1:重启方法sh脚本1

#!/bin/bash
export app=hdx-monitor.jar
P_ID=`ps -ef|grep -w $app | grep -v "grep" | awk '{print $2}'`
if [ $P_ID ]; then
  kill -9 $P_ID
  echo "application stop"
fi
echo "application start"
cd /home/hdxapp/manage
nohup java -jar $app  &
#tail -f nohup.out

1-2:重启方法sh脚本2

$!为最新打开的pid进程号

#!/bin/sh
echo "  =====关闭Java应用======"
PROCESS=`ps -ef |grep java |grep -v grep|grep uav-system-2.0.2.jar|awk '{print $2}'`
for i in $PROCESS
do
  echo "Kill the $1 process [ $i ]"
  kill -9 $i
done
echo "  =====启动Java应用======"
nohup java -Xmx512m  -jar uav-system-2.0.2.jar & 
echo $! > savePid.txt
cat savePid.txt
rm  savePid.txt
tail -f nohup.out

2-1:启动方法sh脚本,指定分配jvm内存大小

#!/bin/sh
echo "  =====启动Java应用======"
nohup java -Xmx512m  -jar uav-system-2.0.2.jar & 
echo $! > savePid.txt
cat savePid.txt
rm  savePid.txt
tail -f nohup.out

2-2:启动方法sh脚本,不指定分配jvm内存大小

#!/bin/sh
echo "  =====启动Java应用======"
nohup java -jar uav-system-2.0.2.jar & 
echo $! > savePid.txt
cat savePid.txt
rm  savePid.txt
tail -f nohup.out

3:停止方法sh脚本

#!/bin/sh
echo "  =====关闭Java应用======"
PROCESS=`ps -ef |grep java |grep -v grep|grep uav-system-2.0.2.jar|awk '{print $2}'`
for i in $PROCESS
do
  echo "Kill the $1 process [ $i ]"
  kill -9 $i
done

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐