一、现在的工程都将就独立和简单了,我们在使用springboot做开发或者其他框架做开发时,在linux上面执行的时候。总会写一下脚本,目的当然是为了更加好的运行程序。不然每次都手动输入一下命令,来调试环境。调整端口等。个人感觉特别麻烦,那么问题来了。为了更好的让项目运行并且看到其中的状态,所以一个好的脚本是非常重要的。
二、这里个人记录一下自己常使用的jar启动脚本
#! /bin/shprojectName="test"#提醒功能help() { echo "help: sh ${projectName}.sh [start|stop|restart]" exit 1}#判断项目是否运行,并且返回对应数字(0 为未启动 1为启动)is_exist(){ #获取pid的方式,个人喜欢咋写就咋写 pid=`ps -ef|grep ${projectName}.jar|grep -v grep|awk '{print $2}'` if [ -z "${pid}" ] then return 0 else return 1 fi}#开始运行项目start(){ is_exist #如果正在运行直接提示 if [ $? -eq 1 ] then echo "${projectName} is running" exit 0; else #没有运行则运行项目 echo "start running ${projectName} ..." currentPath=`pwd` startPath=$(cd `dirname $0`;pwd) #这里写的比较简单,实际生产环境,需要配置参数 cd ${startPath} nohup java -jar -server ${projectName}.jar > ${projectName}/run.log 2>&1 & cd ${currentPath} fi}#停止项目stop(){ echo "stop $projectName ..." is_exist if [ $? -eq 1 ] then #通过pid关闭 kill -9 $pid echo "[ok]" else echo "[ok]" fi}//选择运行方式case "$1" instart) start ;;stop) stop ;;restart) stop start ;;*) help ;;esac
说明:if中的[]必须加空格