#!/bin/bash
#jdk安装路径 如果不需要远程请求执行该文件可以不用引入这个配置
export JAVA_HOME=/xxx/xxx/jdk1.8.0_144
export JRE_HOME=/$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
# 使用绝对路径 不知道绝对路径可使用pwd命令查看
# 使用绝对路径是为了能再win远程执行该文件,如果没这需求可以用相对路径
appName='/xxx/xxx/xxx.jar'
echo ">>>>>>启动: $appName <<<<<<"
# 关闭应用方法
stopApp(){
pid=$( ps -ef |grep $appName |grep 'java -jar'|grep -v grep|awk '{print $2}')
kill -9 $pid
}
# 启动应用方法
startApp(){
#原始重启命令提取应用名称
#-Dspring.profiles.active=dev 指定配置文件,程序已经指定的不用写
nohup java -jar -Dspring.profiles.active=dev $appName &
}
# 滚动打印日志
printLog(){
#日志文件名取决于你输出日志的文件名,默认为nohup.out
#这里的打印日志也和项目的路径一样,按自己需求使用绝对路径还是相对路径
tail -f /xx/xx/xx/nohup.out
}
stopApp
startApp
printLog
#设置为可执行文件 chmod +xxx .sh 执行是直接./xxx .sh
#远程执行ssh -p 22 xx@192.168.0.1 './xxx/xxx .sh'