脚本命令 sh
启动项目命令:sh test.sh start
停止项目命令:sh test.sh stop
重启项目命令:sh test.sh restart
#!/bin/bash
#更新版本的时候,打JAR包直接替换,其他不用修改
#1.部署JAR包路径
JAR_TEST_DIR=/usr/local/java/admin
#2.部署JAR包名
JAR_TEST_NAME=xbzc-admin-0.0.1-SNAPSHOT
#3.格式JAR后缀(版本号统一为*通配)
JAR_TEST_SUFFIX=.jar
JAR_TEST_LOG=.log
#启动项目
start(){
is_exist
if [ $? -eq "0" ]; then
echo "${JAR_TEST_NAME} is already running. pid=${pid} ."
else
echo "${JAR_TEST_NAME} 正在启动..."
cd ${JAR_TEST_DIR}
nohup java -jar $JAR_TEST_NAME$JAR_TEST_SUFFIX > $JAR_TEST_NAME$JAR_TEST_LOG 2>&1 &
fi
}
#停止项目
stop(){
is_exist
if [ $? -eq "0" ]; then
echo "${JAR_TEST_NAME} 正在关闭..."
kill -9 $pid
sleep 0.5
echo "${JAR_TEST_NAME} 已关闭..."
else
echo "${JAR_TEST_NAME} is not running"
fi
}
#使用说明,用来提示输入参数
usage() {
echo "Usage: sh 执行脚本.sh [start|stop|restart|status]"
exit 1
}
#检查程序是否在运行
is_exist(){
pid=`ps -ef|grep java |grep $JAR_TEST_NAME|awk '{print $2}' `
#如果不存在返回1,存在返回0
if [ -z "${pid}" ]; then
return 1
else
return 0
fi
}
#查看项目运行状态
status(){
is_exist
if [ $? -eq "0" ]; then
echo "${JAR_TEST_NAME} is running. Pid is ${pid}"
else
echo "${JAR_TEST_NAME} is NOT running."
fi
}
#重启项目
restart(){
stop
start
}
#根据输入参数,选择执行对应方法,不输入则执行使用说明
case "$1" in
"start")
start
;;
"stop")
stop
;;
"status")
status
;;
"restart")
restart
;;
*)
usage
;;
esac
网友评论