linux下jar的启停及状态监控

 更新时间:2025年11月25日 08:43:41   作者:php321  
文章介绍了如何创建一个执行JAR文件的脚本,包括创建脚本文件、赋予执行权限和使用方法,脚本内容和路径需要根据实际情况进行调整

一、创建脚本文件

vim ssmJar.sh

脚本内容如下

#!/bin/bash  
  
# JAR文件路径  
JAR_PATH="/path/to/your/jarfile.jar"  
  
# Java可执行文件路径(可选)  
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  
}  
  
# 监控JAR文件状态  
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秒检查一次状态,可根据需要调整间隔时间  
        fi  
    done  
}  
  
# 根据参数执行相应操作  
case "$1" in  
    start)  
        startJar  
        ;;  
    stop)  
        stopJar  
        ;;  
    status)  
        monitorJar &  # 在后台运行,否则脚本会阻塞在monitorJar函数中  
        ;;  
    *)  
        echo "Usage: $0 {start|stop|monitor}"  
        exit 1  
        ;;  
esac

二、赋予执行权限

通过如下命令赋予脚本文件可执行权限

chmod +x ssmJar.sh

三、使用方法

#启动
ssmJar.sh start
#停止
ssmJar.sh stop
#状态
ssmJar.sh status

请注意:

  • 需要将/path/to/your/jarfile.jar替换为你的JAR文件的实际路径。
  • 已经将/path/to/your/java/home替换为实际的Java安装路径。
  • 此外,你可以根据需要调整sleep命令中的时间间隔。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • linux corosync+pacemaker+drbd+mysql配置安装详解

    linux corosync+pacemaker+drbd+mysql配置安装详解

    这篇文章主要介绍了corosync+pacemaker+drbd+mysql配置安装详解,需要的朋友可以参考下
    2016-05-05
  • Linux系统查看当前网络连接数的方法小结

    Linux系统查看当前网络连接数的方法小结

    在日常的运维和开发中,网络连接数的监控是一个非常重要的指标,当你需要排查网络问题或优化系统性能时,查看连接数是关键的一步,不同的 Linux 环境和发行版可能需要使用不同的方法来获取连接信息,本文给大家介绍了Linux系统查看当前网络连接数的方法
    2024-12-12
  • Linux ls命令的使用

    Linux ls命令的使用

    这篇文章主要介绍了Linux ls命令的使用,帮助大家更好的理解和学习Linux,感兴趣的朋友可以了解下
    2020-08-08
  • 解决linux系统中运行node进程却无法杀死进程的问题

    解决linux系统中运行node进程却无法杀死进程的问题

    这篇文章主要介绍了linux系统中运行node进程无法杀死进程的问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • 怎么修改Ubuntu的源列表(source list)详解

    怎么修改Ubuntu的源列表(source list)详解

    这篇文章主要给大家介绍了关于如何修改Ubuntu的源列表(source list)的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • linux线程间的同步与互斥知识点总结

    linux线程间的同步与互斥知识点总结

    在本篇文章里小编给大家整理的是关于linux线程间的同步与互斥的相关知识点,有兴趣的朋友们学习下。
    2019-11-11
  • Centos 6和Centos 7下服务启动方法及添加到开机启动项的方法

    Centos 6和Centos 7下服务启动方法及添加到开机启动项的方法

    这篇文章主要介绍了Centos 6和Centos 7下服务启动方法及添加到开机启动项的方法的相关资料,需要的朋友可以参考下
    2016-10-10
  • 在Linux和Windows下查看文件MD5值的几种方法

    在Linux和Windows下查看文件MD5值的几种方法

    MD5是一种常见的哈希算法,用于生成文件的唯一“指纹”,它在文件传输和验证过程中非常有用,能够确保文件未被篡改,本文将介绍在 Linux 和 Windows 下查看文件 MD5 值的几种方法,并分别列出不同操作系统下的命令,需要的朋友可以参考下
    2025-06-06
  • 详解Ubuntu14.04桥接网络设置与SSH登陆

    详解Ubuntu14.04桥接网络设置与SSH登陆

    本篇文章主要介绍了详解Ubuntu14.04桥接网络设置与SSH登陆,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • Linux基本网络配置方法介绍

    Linux基本网络配置方法介绍

    本篇文章主要介绍了Linux网络基本网络配置方法介绍,对于初学linux有一定的帮助,有需要的朋友可以了解一下。
    2016-12-12

最新评论