start.sh
#!/bin/bash
# 后台运行jar包,并将日志写到nohup.out文件
APP_NAME=ruoyi-admin.jar
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Stop Process...'
kill -9 $tpid
fi
# 再次查看进程是否已结束
tpid=`ps -ef|grep $APP_NAME|grep -v grep|grep -v kill|awk '{print $2}'`
if [ ${tpid} ]; then
echo 'Stop Process...'
kill -9 $tpid
else
echo 'Stop Procecss Successfully!'
echo 'start Procecss...'
# 启动程序,简单的启动
nohup java -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp/heapdump.hprof -Xmx8192m -Xms8192m -jar $APP_NAME > nohup.out 2>&1 &
# 启动程序,并用jconsole或jvisual监控程序
# nohup java -Djava.rmi.server.hostname=192.168.199.130 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -jar $APP_NAME > nohup.out &
# 动态查看日志文件
#tail -300f nohup.out
fi
exit 0
nohup java -jar ruoyi-admin.jar --spring.profiles.active=prod >> /data/java/app.log 2>&1 &
log.sh
tail -500f /data/java/app.log
kill.sh
#!/bin/bash
APP_NAME=ruoyi-admin.jar
PID=$(ps -ef | grep $APP_NAME | grep -v grep | awk '{ print $2 }')
if [ -z "$PID" ]
then
echo Application is already stopped
else
echo kill $PID
kill -9 $PID
fi
#!/bin/bash
# 定义要查找的 jar 文件名
JAR_NAME="ruoyi-admin.jar"
# 使用 jps 命令查找包含指定 jar 文件的进程
PIDS=$(jps -l | grep "$JAR_NAME" | awk '{print $1}')
# 检查是否找到进程
if [ -z "$PIDS" ]; then
echo "没有找到运行中的进程包含 $JAR_NAME。"
else
# 打印找到的进程号
echo "找到以下进程包含 $JAR_NAME:$PIDS"
# 询问用户是否确认杀死这些进程
read -p "是否确认杀死这些进程? (y/n): " CONFIRM
if [ "$CONFIRM" == "y" ]; then
# 使用 kill 命令杀死进程
for PID in $PIDS; do
echo "正在杀死进程 $PID..."
kill -9 $PID
echo "进程 $PID 已杀死。"
done
else
echo "取消杀死进程操作。"
fi
fi
debug_start.sh
nohup java -jar ruoyi-admin.jar --spring.profiles.active=prod -Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=5003 >> /data/java/app.log 2>&1 &