Java應(yīng)用啟動停止重啟Shell腳本模板server.sh
更新時(shí)間:2023年08月09日 11:22:45 作者:YYGP
這篇文章主要為大家介紹了Java應(yīng)用啟動、停止、重啟Shell腳本模板server.sh,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
server.sh
#!/bin/bash
#java options
APP_MAINCLASS=com.woo.erp.WooERPMain
PROC_NAME=WooERPMain
# 日志路徑,加不加引號都行。 注意:等號兩邊 不能 有空格,否則會提示command找不到
LOG_PATh=/data/application/woo-erp/nohup.out
#Xms inin memery
#Xmx max memery
#Xmn young memery
JAVA_OPTS="-Duser.timezone="GMT+8" -Xms512m -Xmx2G -XX:CompressedClassSpaceSize=128m -XX:MetaspaceSize=200m -XX:MaxMetaspaceSize=200m -Xloggc:logs/gc.log -cp .:classes/:dependency/* -Dspring.profiles.active=default"
# 啟動方法
start() {
# 重新獲取一下pid,因?yàn)槠渌僮魅鐂top會導(dǎo)致pid的狀態(tài)更新
pid=`ps -ef | grep $PROC_NAME | grep -v grep | awk '{print $2}'`
# -z 表示如果$pid為空時(shí)執(zhí)行
if [ -z $pid ]; then
nohup java $JAVA_OPTS $APP_MAINCLASS /dev/null 2>&1 &
# nohup java -jar $PROC_NAME $JAVA_OPTS /dev/null 2>&1 &
pid=`ps -ef | grep $PROC_NAME | grep -v grep | awk '{print $2}'`
echo ""
echo "Service ${PROC_NAME} is starting!pid=${pid}"
echo "........................Here is the log.............................."
echo "....................................................................."
# tail -f $LOG_PATh
echo "........................Start successfully!........................."
else
echo ""
echo "Service ${PROC_NAME} is already running,it's pid = ${pid}. If necessary, please use command: sh auto_deploy.sh restart."
echo ""
fi
}
# 停止方法
stop() {
# 重新獲取一下pid,因?yàn)槠渌僮魅鐂tart會導(dǎo)致pid的狀態(tài)更新
pid=`ps -ef | grep $PROC_NAME | grep -v grep | awk '{print $2}'`
# -z 表示如果$pid為空時(shí)執(zhí)行。 注意:每個命令和變量之間一定要前后加空格,否則會提示command找不到
if [ -z $pid ]; then
echo ""
echo "Service ${PROC_NAME} is not running! It's not necessary to stop it!"
echo ""
else
kill -9 $pid
echo ""
echo "Service stop successfully!pid:${pid} which has been killed forcibly!"
echo ""
stop
fi
}
# 輸出運(yùn)行狀態(tài)方法
status() {
# 重新獲取一下pid,因?yàn)槠渌僮魅鐂top、restart、start等會導(dǎo)致pid的狀態(tài)更新
pid=`ps -ef | grep $PROC_NAME | grep -v grep | awk '{print $2}'`
# -z 表示如果$pid為空時(shí)執(zhí)行。注意:每個命令和變量之間一定要前后加空格,否則會提示command找不到
if [ -z $pid ];then
echo ""
echo "Service ${PROC_NAME} is not running!"
echo ""
else
echo ""
echo "Service ${PROC_NAME} is running. It's pid=${pid}"
echo ""
fi
}
# 重啟方法
restart() {
echo ""
echo ".............................Restarting.............................."
echo "....................................................................."
stop
start
}
info() {
echo "System Information:"
echo "****************************"
echo `head -n 1 /etc/issue`
echo `uname -a`
echo "****************************"
echo "JAVA_HOME=$JAVA_HOME"
echo `$JAVA_HOME/bin/java -version`
echo "****************************"
echo "APP_MAINCLASS=$APP_MAINCLASS"
echo "****************************"
}
if [ ! -n "$1" ] ;then
echo "Usage: $0 {start|stop|restart|status|info}"
elif [ $1 = "start" ];then
start
elif [ $1 = "stop" ];then
stop
elif [ $1 = "restart" ];then
restart
elif [ $1 = "status" ];then
status
elif [ $1 = "info" ];then
info
fi使用示例
./server start #啟動 ./server stop #停止 ./server restart #重啟 ./server status #查看啟動狀態(tài) ./server info #查看系統(tǒng)信息
以上就是Java應(yīng)用啟動、停止、重啟Shell腳本模板server.sh的詳細(xì)內(nèi)容,更多關(guān)于Java啟動停止重啟腳本模板的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
IDEA對使用了第三方依賴jar包的非Maven項(xiàng)目打jar包的問題(圖文詳解)
這篇文章主要介紹了IDEA對使用了第三方依賴jar包的非Maven項(xiàng)目打jar包的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07
支持SpEL表達(dá)式的自定義日志注解@SysLog介紹
這篇文章主要介紹了支持SpEL表達(dá)式的自定義日志注解@SysLog,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02
SpringBoot 框架下高效敏感詞過濾功能的實(shí)現(xiàn)方案
內(nèi)容安全審核是一個非常重要的功能,本文將詳細(xì)介紹在SpringBoot項(xiàng)目中實(shí)現(xiàn)一個功能完善的敏感詞過濾系統(tǒng),使用DFA算法實(shí)現(xiàn)高效的敏感詞匹配,結(jié)合Redis實(shí)現(xiàn)敏感詞的持久化存儲,提供完整的RESTAPI接口,支持敏感詞的動態(tài)添加和更新,感興趣的可以了解一下2026-01-01
Java中使用fileupload組件實(shí)現(xiàn)文件上傳功能的實(shí)例代碼
這篇文章主要介紹了Java中使用fileupload組件實(shí)現(xiàn)文件上傳功能的實(shí)例代碼,需要的朋友可以參考下2017-05-05
TOMCAT內(nèi)存溢出及大小調(diào)整的實(shí)現(xiàn)方法
下面小編就為大家?guī)硪黄猅OMCAT內(nèi)存溢出及大小調(diào)整的實(shí)現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-05-05
springboot中獲取配置文件中屬性值的幾種方式小結(jié)
本文主要介紹了springboot中獲取配置文件中屬性值的幾種方式小結(jié),主要介紹了六種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-05-05

