linux下jar的啟停及狀態(tài)監(jiān)控
更新時間:2025年11月25日 08:43:41 作者:php321
文章介紹了如何創(chuàng)建一個執(zhí)行JAR文件的腳本,包括創(chuàng)建腳本文件、賦予執(zhí)行權(quán)限和使用方法,腳本內(nèi)容和路徑需要根據(jù)實際情況進行調(diào)整
一、創(chuàng)建腳本文件
vim ssmJar.sh
腳本內(nèi)容如下
#!/bin/bash
# JAR文件路徑
JAR_PATH="/path/to/your/jarfile.jar"
# Java可執(zhí)行文件路徑(可選)
JAVA_HOME="/path/to/your/java/home"
# 啟動JAR文件
function startJar() {
if [ -f "$JAR_PATH" ]; then
echo "Starting JAR file..."
if [ -n "$JAVA_HOME" ]; then
$JAVA_HOME/bin/java -jar "$JAR_PATH" &
else
java -jar "$JAR_PATH" &
fi
echo "JAR file started."
else
echo "JAR file not found!"
fi
}
# 停止JAR文件
function stopJar() {
echo "Stopping JAR file..."
PID=$(ps -ef | grep "$JAR_PATH" | grep -v grep | awk '{print $2}')
if [ -n "$PID" ]; then
kill -9 "$PID"
echo "JAR file stopped."
else
echo "JAR file not running."
fi
}
# 監(jiān)控JAR文件狀態(tài)
function monitorJar() {
while true; do
echo "Monitoring JAR file..."
PID=$(ps -ef | grep "$JAR_PATH" | grep -v grep | awk '{print $2}')
if [ -z "$PID" ]; then
echo "JAR file stopped."
exit 1
else
echo "JAR file is running with PID: $PID"
sleep 5 # 每隔5秒檢查一次狀態(tài),可根據(jù)需要調(diào)整間隔時間
fi
done
}
# 根據(jù)參數(shù)執(zhí)行相應(yīng)操作
case "$1" in
start)
startJar
;;
stop)
stopJar
;;
status)
monitorJar & # 在后臺運行,否則腳本會阻塞在monitorJar函數(shù)中
;;
*)
echo "Usage: $0 {start|stop|monitor}"
exit 1
;;
esac二、賦予執(zhí)行權(quán)限
通過如下命令賦予腳本文件可執(zhí)行權(quán)限
chmod +x ssmJar.sh
三、使用方法
#啟動 ssmJar.sh start #停止 ssmJar.sh stop #狀態(tài) ssmJar.sh status
請注意:
- 需要將
/path/to/your/jarfile.jar替換為你的JAR文件的實際路徑。 - 已經(jīng)將
/path/to/your/java/home替換為實際的Java安裝路徑。 - 此外,你可以根據(jù)需要調(diào)整
sleep命令中的時間間隔。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
CentOS6.5 升級 Python 2.7 版本詳細介紹
這篇文章主要介紹了 CentOS6.5 升級 Python 2.7 版本詳細介紹的相關(guān)資料,需要的朋友可以參考下2017-01-01
詳解Linux系統(tǒng)中設(shè)置SFTP服務(wù)用戶目錄權(quán)限的方法
這篇文章主要給大家介紹了Linux系統(tǒng)中設(shè)置SFTP服務(wù)用戶目錄權(quán)限的方法,文中給出了詳細的設(shè)置方法,有需要的朋友們可以參考借鑒,下面來一起看看吧。2016-12-12
Linux通過vim修改Jar包并重新發(fā)布過程(Springboot項目)
本文介紹了如何修改Springboot項目的jar包中的單個文件,包括安裝unzip、修改文件、重新發(fā)布jar包等步驟,并說明了在使用thymeleaf時清除瀏覽器緩存的必要性2026-04-04
jar包在linux服務(wù)器已經(jīng)運行好但是訪問不到地址的問題及解決方法
這篇文章主要介紹了jar包在linux服務(wù)器已經(jīng)運行好但是訪問不到地址的問題,解決方案是需要修改防火墻開放的端口,查看防火墻開放的端口,本文給大家介紹的非常詳細,需要的朋友可以參考下2022-10-10
基于 Ubuntu 的發(fā)行版上安裝微軟 TrueType 字體的教程
這篇文章主要介紹了基于 Ubuntu 的發(fā)行版上安裝微軟 TrueType 字體的教程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-04-04
Linux如何使用HTTP進行遠程系統(tǒng)監(jiān)控
這篇文章主要介紹了Linux如何使用HTTP進行遠程系統(tǒng)監(jiān)控問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-11-11

