怎么在Linux系統中使用shell腳本啟動jar包?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
一鍵啟動、停止、重啟 java項目
創建.sh文件
vi XXX.sh
編寫shell腳本
#!/bin/sh
port=8080 #定義變量等號左右不能有空格
jar_name=/opt/oaclou/XXX.jar
#運行腳本提示信息
tips(){
echo "-------------------------------------"
echo ""
echo "項目端口: ${port}"
echo "項目地址: ${jar_name}"
echo ""
echo "你可以使用如下參數進行操作"
echo "-status -查看當前項目運行狀態"
echo "-start -啟動當前項目"
echo "-stop -停止當前項目"
echo "-restart -重啟當前項目"
echo ""
echo "-------------------------------------"
}
#查看狀態
status(){
#查詢端口的PID {print $7}-取出打印的第七個值
pid=`netstat -apn |grep $port |awk '{print $7}' |cut -d/ -f 1`
#判斷端口是否被占用
if [ -z "${pid}" ];then
echo "沒有項目在運行"
else
echo "項目正在運行中"
fi
}
#啟動項目
start(){
pid=`netstat -apn |grep $port |awk '{print $7}' |cut -d/ -f 1`
if [ -z "${pid}" ];then
echo "正在啟動......"
java -jar -Xms1024m -Xmx1024m $jar_name
else
echo "項目運行中或端口已被占用"
fi
}
#停止項目
stop(){
pid=`netstat -apn |grep $port |awk '{print $7}' |cut -d/ -f 1`
if [ -z "${pid}" ];then
echo "沒有項目在運行,請先啟動"
else
kill -9 $pid
echo "已殺死端口為 ${port} 的應用"
fi
}
#重啟項目
restart(){
pid=`netstat -apn |grep $port |awk '{print $7}' |cut -d/ -f 1`
echo "正在殺死端口 ${port} 的pid ${pid} 中..."
if [ -z "${pid}" ];then
echo "項目未啟動"
else
kill -9 $pid
fi
sleep 5 #睡眠五秒
start #調用啟動方法
echo "項目重啟成功!"
}
#參數選項
case "$1" in
"-status")
status
;;
"-start")
start
;;
"-stop")
stop
;;
"-restart")
restart
;;
*)
tips
;;
esac給.sh文件授權
此時創建的文件還是普通文本,顏色為灰色,需要給文件授權讓文件變成可運行文件,綠色的
#授予文件最大權限 chmod 777 XXX.sh
使用命令啟動jar
./XXX.sh -start
看完上述內容,你們掌握怎么在Linux系統中使用shell腳本啟動jar包的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。