温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

linux开机启动jar

发布时间:2020-08-11 11:03:14 来源:网络 阅读:749 作者:17099933344 栏目:软件技术

#添加开机启动命令:

##chmod  +x start-all-jar.sh

##chkconfig --add start-all-jar.sh

##chkconfig  start-all-jar.sh on



============start-all-jar.sh执行文件==============

#! /bin/sh

# chkconfig: 2345 11 80

# description: start and stop all jar 

#export DOCKER_IP=192.168.1.128

#DOCKER_IP=${DOCKER_IP:-0.0.0.0}

# Source function library.

. /etc/init.d/functions


RETVAL=0  

PATH_VERSION="0.0.1-SNAPSHOT"

nowtime=`date   +%Y-%m%d-%M%S`

today=`date   +%Y-%m%d`

###### jar 服务名称######

cd /data/es/openec/

ls -l  *.jar|awk  '{print $NF}'> /etc/init.d/jarname.txt


#启动服务

function start_core(){

    if [ ! -d "/data/es/openec/logs" ]; then

  mkdir -p /data/es/openec/logs

    fi


    echo "#########################################################"  >> /data/es/openec/logs/start-${today}_out.log

echo  "############${nowtime} 启动服务###############"   >> /data/es/openec/logs/start-${today}_out.log


for i in `cat  /etc/init.d/jarname.txt`

do 

_SERVICE_NAME=/data/es/openec/${i}

#    _NAME_SUFFIXX="\>"

    _PROC_ID=`ps -ef|grep -i ${_SERVICE_NAME}|grep -v "grep"|awk '{print $2}'`


    if [ ! $_PROC_ID = "" ]; then

        echo "${i} 已经启动"

echo "################" >> /data/es/openec/logs/start-${today}_out.lo

echo "${i} 已经启动" /data/es/openec/logs/start-${today}_out.lo

echo

exit

    fi

    exec java -Djava.security.egd=file:/dev/./urandom -jar /data/es/openec/${i} >> /data/es/openec/logs/${i}_${nowtime}_out.log &

echo "java -Djava.security.egd=file:/dev/./urandom -jar /data/es/openec/${i} " >> /data/es/openec/logs/start-${today}_out.log 

echo "启动服务${nowtime} : ${_SERVICE_NAME}"

echo 

sleep 1

    done

}


#关闭服务

function stop_core(){

 

 for jarname in  `cat  /etc/init.d/jarname.txt`

 do

  servicename=/data/es/openec/${jarname}

 _PROC_ID=`ps -ef|grep -i ${servicename}|grep -v "grep"|awk '{print $2}'`

    if [ ! $_PROC_ID = "" ]; then

kill -9 $_PROC_ID

echo "#########################################################"  >> /data/es/openec/logs/stop-${today}_out.log

       echo  "############${nowtime} 启动服务###############"   >> /data/es/openec/logs/stop-${today}_out.log

echo  " 关闭服务${servicename} " >>  /data/es/openec/logs/stop-${today}_out.log

echo  " 关闭服务${servicename} " 

sleep 1

    fi

  done

}


function corestatus(){

 for j in  `cat  /etc/init.d/jarname.txt`

 do

  _servicename=/data/es/openec/${j}

 _PROC_ID=`ps -ef|grep  "${servicename}"|grep -v "grep"|awk '{print $2}'`

    if [ ! $_PROC_ID = "" ]; then

echo  " 服务${_servicename} 正在运行 " 

echo

else

echo   " 服务${_servicename} 已经关闭 " 

echo

    fi

 done

}


#重启服务

function restart_core(){

    stop_core

    start_core 

}


function start(){ #启动服务的入口函数  

start_core 

}  

  

function stop(){ #关闭服务的入口函数  

stop_core

}  

  

#使用case选择  

case $1 in  

start)  

start_core  

;;  

stop)  

stop_core

;;

status)

corestatus

;; 

*) 

echo "error choice ! please input start or stop";;  

esac  

exit $RETVA  


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI