通用jar包启动脚本

通用jar包启动脚本

通用jar包启动脚本

  1. 使用方法:

把本脚本和jar包放置在同一目录,并保证该目录下只有一个jar包。
jar包的输出文件名为“nohup.当前目录名”

  1. 运行jar包:

脚本名后跟start|stop|restart|status即可

  1. 脚本内容:
#!/bin/bash
#######################
#脚本使用方法:
#本脚本和jar包在同一目录下,保证当前目录有且只有一个jar包即可。无需修改任何东西。
# Usage: $0 {start|stop|status|restart}
#######################
#可在此处添加需要加载的环境变量
#######################

CurrentPath=`pwd`
CurrentDirName=`basename $(pwd)`
if ls *.jar &> /dev/null ;then
        if [ `ls *.jar | wc -l` -eq 1 ];then
                APP_NAME=`find $CurrentPath -maxdepth 1 -name "*.jar"`
        else
                echo -e "\033[31m------   Error! Too Much JAR Packages In This Directory !\033[0"
                exit 2
        fi
else
        echo -e "\033[31m------   Error! No JAR Package In Current File !\033[0"
        exit 1
fi

is_exist () {
    pid=`ps aux | grep $APP_NAME | grep -v grep | grep "jar$"| awk '{print $2}'`
    if [ -z "$pid" ];then
        return 1
    else
        return 0
    fi
}
start () {
    is_exist
    if [ $? -eq 0 ];then
        echo "${APP_NAME} is already running. pid=${pid} ."
    else
        nohup java -jar $APP_NAME &> nohup.$CurrentDirName &
    fi
}
stop () {
    is_exist
    if [ $? -eq 0 ];then
        kill  $pid
    else
        echo "${APP_NAME} is not running"
    fi
}
status () {
    is_exist
    if [ $? -eq 0 ];then
        echo "${APP_NAME} is running. Pid is ${pid}"
    else
        echo "${APP_NAME} is not running"
    fi
}
case $1 in
    start)
        start;;
    stop)
        stop;;

    restart)
        stop
        start;;
    status)
        status;;
    *)
        echo "Usage: $0 {start|stop|status|restart} "
esac

转载于:https://blog.51cto.com/11975865/2383075

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100964.html原文链接:https://javaforall.net

(0)
上一篇 2021年7月5日 下午2:00
下一篇 2021年7月5日 下午3:00


相关推荐

  • 安装 Prophet

    安装 Prophet本安装文档主要翻译整理自ProphetInstallation官方安装文档。在R上安装Prophet一、Windows系统安装Prophet前的准备工作如果是Windows系统,需要按照rstan提供的教程给R安装一个编译器。其中,最为关键的一步就是先安装Rtools。1.安装R和RStudio2.安装Rtools,确保其安装…

    2022年6月25日
    104
  • Pycharm安装matplotlib,pandas报错的解决方法

    Pycharm安装matplotlib,pandas报错的解决方法Pycharm 第二天 matplotlib 安装不了 问题来了 一招搞定

    2026年3月17日
    2
  • 为linux用户添加sudu权限

    为linux用户添加sudu权限解决方法如下 nbsp nbsp nbsp 1 进入超级用户模式 也就是输入 su 系统会让你输入超级用户密码 输入密码后就进入了超级用户模式 nbsp nbsp nbsp 2 添加文件的写权限 也就是输入命令 chmodu w etc sudoers nbsp nbsp nbsp 3 编辑 etc sudoers 文件 也就是输入命令 vim etc sudoers 输入 i 进入编辑模式 找到这一行 rootALL AL

    2026年3月19日
    2
  • 队列的顺序存储结构之循环队列

    队列的顺序存储结构之循环队列一、队列的定义队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。队列是一种先进先出(FirstInFirstOut)的线性表,简称FIFO。允许插入的一端称为队尾,允许删除的一端称为队头。如图所示:二、循环队列的引出为了避免当队中只剩一个元素的时候,队头队尾重合使处理变得麻烦。所以我们引入两个指针,front指针指向队头元素,rear指针指向队尾元素…

    2022年5月22日
    43
  • JSP的基本使用总结

    JSP的基本使用总结JSP 的使用本文适合初学者学习 JSP 时参考 包括代码演示 相信初学者看完一定有所收获 本文可以学习到 JSP 最重要也是必须掌握的部分还可以看看博主的其他文章 都很适合初学者 MySQL 的时使用 看这篇就够了 传送地址 MySQL 必知必会 Servlet 服务器必知必会 传送地址 初学 Servlet 服务器 看这篇就够了总结不易 收藏点赞哦 持续更新 Java 后端总结 文章目录 JSP 的使用一 JSP 的介绍与创建二 JSP 的本质三 JSP 的语法四 JSP 中的常用脚本 1 声明脚本 2 表达式脚本 3

    2026年3月26日
    2
  • OneAPI政务热线升级:接入讯飞星火语音识别+文心一言文本生成,坐席辅助响应提速3.2倍

    OneAPI政务热线升级:接入讯飞星火语音识别+文心一言文本生成,坐席辅助响应提速3.2倍

    2026年3月13日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号