linux開機啟動jar

來源:互聯網
上載者:User

標籤:linux開機啟動jar

#添加開機啟動命令:

##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  


linux開機啟動jar

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.