Linux Java服务管理脚本(启动、停止、查看状态)

Linux Java服务管理脚本(启动、停止、查看状态)

新建脚本

bash 复制代码
vim service.sh

脚本内容

JAR_FLE 填写jar包的文件名!!!

bash 复制代码
#!/bin/bash

JAR_FILE=quanzhou-driver-ai-api-0.0.1-SNAPSHOT.jar

usage() {
    echo "Usage: $0 {start|stop|status}"
    echo ""
    echo "Options:"
    echo "  start      Start the service."
    echo "  stop       Stop the service."
    echo "  status     Check the service status."
    echo ""
}

if [ -z "$1" ]; then
    usage
    exit 1
fi


case "$1" in
    start)
        echo "Starting service with JAR file: $JAR_FILE"
        nohup java -Dspring.profiles.active=test -jar $JAR_FILE > /dev/null 2>&1 &
        PID=$(pgrep -f "$JAR_FILE")
        echo "Service started successfully with PID: $PID"
        ;;
    stop)
        echo "Stopping service..."
        PID=$(pgrep -f "$JAR_FILE")
        if [ -z "$PID" ]; then
            echo "No running process found."
        else
            kill -9 $PID
            echo "Service stopped successfully with PID: $PID"
        fi
        ;;

    status)
        PID=$(pgrep -f "$JAR_FILE")
        if [ -z "$PID" ]; then
            echo "Service is not running."
        else
            echo "Service is running with PID: $PID"
        fi
        ;;
    *)
        usage
        exit 1
        ;;
esac

exit 0

保存

bash 复制代码
esc 退出编辑模式

:wq 保存修改

赋予权限

bash 复制代码
chmod +x service.sh

脚本使用

bash 复制代码
./service.sh start 启动服务
./service.sh stop 停止服务
./service.sh status 查看状态
相关推荐
mghio7 小时前
Dubbo 中的集群容错
java·微服务·dubbo
咖啡教室12 小时前
java日常开发笔记和开发问题记录
java
咖啡教室12 小时前
java练习项目记录笔记
java
鱼樱前端13 小时前
maven的基础安装和使用--mac/window版本
java·后端
RainbowSea13 小时前
6. RabbitMQ 死信队列的详细操作编写
java·消息队列·rabbitmq
RainbowSea13 小时前
5. RabbitMQ 消息队列中 Exchanges(交换机) 的详细说明
java·消息队列·rabbitmq
李少兄15 小时前
Unirest:优雅的Java HTTP客户端库
java·开发语言·http
此木|西贝15 小时前
【设计模式】原型模式
java·设计模式·原型模式
可乐加.糖15 小时前
一篇关于Netty相关的梳理总结
java·后端·网络协议·netty·信息与通信