shell脚本运行jar包获取参数_linux加载一个目录下的所有jar包

shell脚本运行jar包获取参数_linux加载一个目录下的所有jar包当使用SpringBoot框架时,他自己集成了tomcat。在启动jar包时,经常需要复制一大段命令,尤其是在项目目录发生改变的时候,实在繁琐。所以可以使用shell脚本来启动、关闭和重启Java项目。创建一个shell脚本vim脚本名.sh脚本内容:#!/bin/bash#这里可替换为你自己的执行程序,其他代码无需更改JAR_NAME=jar包名称#lib目录LOAD_PATH=”-Dloader.path=/home/local/lib/”#项目配置文件CONFIG_PATH

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

当使用SpringBoot框架时,他自己集成了tomcat。在启动jar包时,经常需要复制一大段命令,尤其是在项目目录发生改变的时候,实在繁琐。所以可以使用shell脚本来启动、关闭和重启Java项目。

创建一个shell脚本

vim 脚本名.sh

脚本内容:

#!/bin/bash
#这里替换为你自己的执行程序的名称
JAR_NAME=jar包名称
#lib目录
LOAD_PATH="-Dloader.path=/home/local/lib/"
#项目配置文件
CONFIG_PATH="--spring.config.location=/home/local/config/application.yml"
LOG_PATH="/home/local/日志名称.log"
FILE_PATH="/home/local/jar包名"

#使用说明
usage(){ 
   
echo "Usage: sh 执行脚本.sh [start|stop|restart]"
exit 1
}

#检查程序是否在运行 
is_exist(){ 
    
pid=`ps -ef|grep $JAR_NAME|grep -v grep|awk '{print $2}' ` 
#如果不存在返回1,存在返回0 
if [ -z "${pid}" ]; then 
return 1 
else 
return 0 
fi 
} 

#启动方法 
start(){ 
    
is_exist 
if [ $? -eq "0" ]; then 
echo "${JAR_NAME} is already running. pid=${pid} ." 
else 
nohup java $LOAD_PATH -jar $FILE_PATH  $CONFIG_PATH > $LOG_PATH 2>&1 &
fi
} 

#停止方法 
stop(){ 
    
is_exist 
if [ $? -eq "0" ]; then 
kill -9 $pid 
else 
echo "${JAR_NAME} is not running" 
fi 
} 

#重启 
restart(){ 
    
stop 
start 
} 
#根据输入参数,选择执行对应方法,不输入则执行使用说明 
case "$1" in 
"start") 
start 
;; 
"stop") 
stop 
;; 
"status") 
status 
;; 
"restart") 
restart 
;; 
*) 
usage 
;; 
esac

使用示例:

#启动jar包
sh 脚本名.sh start

以后就再也不用复制命令了,直接一键启动。。。。

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux常用命令汇总_unix命令大全

    linux常用命令汇总_unix命令大全目录一、进程管理二、系统信息三、关机(系统的关机、重启以及登出)四、文件和目录五、文件搜索六、挂载一个文件系统七、磁盘空间八、系统负载–top九、用户和群组十、文件的权限-使用”+”设置权限,使用”-“用于取消十一、文件的特殊属性-使用”+”设置权限,使用”-“用于取消十二、打包和压缩文件十三、OS包管理器①、RPM包-(Fedora,Redhat及类似系统)②、YUM软件包升级………

    2022年9月23日
    0
  • TiKV学习笔记

    TiKV学习笔记一、TiKV简介1.1、TiKV概述TiDB的存储用的TiKV,TiKV是基于RocksDB实现了分布式(可水平扩展,支持主从),RocksDB是对单机版LevelDB的封装。TiKV是开源的、分布式、支持事务的VK数据库。TiKV不仅提供了KV的API,且提供了兼容ACID的API。TiKV用Rust语言实现,用采用Raft协议,作为TiDB的存储层,是一个兼容了MySQL协议的分布式HTAP数据库。TiKV保证数据一致性,TiKV基于Rust语言实现了Raft协议,一致性状态存储在Rock

    2022年9月24日
    0
  • StretchDIBits 函数

    StretchDIBits 函数不知道各位有咩有被这个函数搞得很蛋疼,反正我是了,网上的文章很多其实都是到处copy,看了很多然并卵。这个函数的功能和参数就不多说了,蛋疼主要是它画的图片是倒着的,主要问题是怎么把他搞回来。网上的文章说了当目标宽度和源宽度的符号不一样他会做关于x轴的镜像,高度的符号不一样会做Y轴的镜像。好的我的开始函数是这样的StretchDIBits(bufferHDC,0,0,m_nVideoW

    2022年6月16日
    25
  • 激活成功教程芝诺悖论之阿基里斯追乌龟

    激活成功教程芝诺悖论之阿基里斯追乌龟版权所有。所有权利保留。欢迎转载,转载时请注明出处:阿基里斯是古希腊神话中善跑的英雄。在他和乌龟的竞赛中,他速度v1,位置坐标0;乌龟速度v2,位置坐标s。已知v1>v2。他在后面追,但他不可能追上乌龟。因为在竞赛中,追者首先必须到达被追者的出发点,当阿基里斯追到s时,乌龟已经又向前爬了s/v1*v2,位置s+s/v1*v2。于是,一个新的起点产生了;阿基里斯必须继续追,而当他追到乌龟爬的

    2022年6月23日
    29
  • idea创建javaweb项目详解_idea怎么创建普通java项目

    idea创建javaweb项目详解_idea怎么创建普通java项目初学javaweb不用maven不用gradle手把手教你如何创建自己的JavaWeb项目文章目录1.创建项目1.创建项目file→new→project(这里不用管直接下一步,我们给项目起一个名字!)如图项目已经创建好了!…

    2022年9月20日
    0
  • linux安装oracle19c完整版(图形+静默安装)

    linux安装oracle19c完整版(图形+静默安装)最近有项目要搭建测试环境,加上又刚参加了oracle组织的oracle19c的升级培训,所以准备在测试环境里面直接安装oracle19c。

    2022年7月19日
    12

发表回复

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

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