前言
网上搜了一些jar包脚本,都比较复杂,感觉可能会很危险。所以自己搞了一些容易懂,注释明确的脚本。
脚本使用sh编写,脚本不使用java环境变量。因为可能存在不同java版本,同时运行在一个机器上的情况,例如java8、17。
一、脚本
1、JAVA环境脚本
说明:一般情况下,接受机器最好使用运行以下脚本查看JAVA信息
作用:探查当前用户环境中的变量及jar程序
#!/bin/sh
echo "输出JAVA_HOME变量地址"
echo $JAVA_HOME
echo "--------------------"
echo "输出当前环境配置的JAVA版本信息"
java -version
echo "--------------------"
echo "输出当前运行的JAVA程序信息"
ps -ef|grep java
echo "--------------------"
echo "输出本地存在JAVA运行环境的目录"
locate jre/bin/java
2、启动脚本
说明/作用:启动JAR包脚本
#!/bin/sh
# java环境
java_env="/opt/lingui/java/jdk17/bin/java"
# 应用路径
app="./kmos-web.jar"
# 日志路径
log_file="log.log"
# 启动JAVA程序
echo "start application \"${app}\""
nohup $java_env -jar $app > $log_file 2>&1 &
# 查看日志
tail -f log.log
3、停止脚本
说明/作用:停止上面启动的JAR程序
注意:找到过多程序会中断抛出异常,未找到则输出not found
#!/bin/sh
# 程序对应名
app_name="kmos-web.jar"
echo "star interrupt application \"$app_name\""
# 查找程序名对应pid
pid=$(pgrep -f $app_name)
# pid字符长度大于0
if [ -n "$pid" ]
then
echo "stop pid ${pid} app_name ${app_name}"
# 关闭程序
kill -9 $pid
echo "${app_name} was stop"
else
# 未找到程序
echo "application \"$app_name\" pid not found"
fi
echo "script end"
4、重启脚本
说明:重启JAR程序
作用:重启JAR程序,启动、暂停脚本的复合脚本
#!/bin/sh
# 程序对应名
app_name="kmos-web.jar"
# java环境
java_env="/opt/lingui/java/jdk17/bin/java"
# 应用路径
app="./${app_name}"
# 日志路径
log_file="log.log"
# 如果已启动则关闭
echo "star interrupt application \"$app_name\""
# 查找程序名对应pid
pid=$(pgrep -f $app_name)
# pid长度大于0
if [ -n "$pid" ]
then
echo "stop pid ${pid} app_name ${app_name}"
# 关闭程序
kill -9 $pid
echo "${app_name} was stop"
else
# 未找到程序
echo "application \"$app_name\" pid not found"
fi
# 启动JAVA程序
echo "start application \"${app}\""
nohup $java_env -jar $app > $log_file 2>&1 &
# 查看日志
tail -f log.log
有任何问题请留言讨论,感谢