#!/bin/bash
#替换成自己的java环境变了
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b10-3.el8_3.x86_64
export JRE_HOME=/$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin#这里替换为程序位置
APP_NAME=/test/dev/test.jar
#使用说明,用来提示输入参数
usage() {echo "Usage: sh safe-dev.sh [start|stop|restart|status]"exit 1
}#检查程序是否在运行
is_exist(){pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}'`#如果不存在返回1,存在返回0     if [ -z "${pid}" ]; thenreturn 1elsereturn 0fi
}#启动方法
start(){is_existif [ $? -eq 0 ]; thenecho "${APP_NAME} is already running. pid=${pid}"elsenohup java -jar ${APP_NAME}  >safe-dev.out 2>&1 &fi
}#停止方法
stop(){is_existif [ $? -eq "0" ]; thenkill -9 $pidelseecho "${APP_NAME} is not running"fi
}#输出运行状态
status(){is_existif [ $? -eq "0" ]; thenecho "${APP_NAME} is running. Pid is ${pid}"elseecho "${APP_NAME} is NOT running."fi
}#重启
restart(){stopsleep 5start
}#根据输入参数,选择执行对应方法,不输入则执行使用说明
case "$1" in"start")start;;"stop")stop;;"status")status;;"restart")restart;;*)usage;;
esac

注意事项

在windows上创建编辑的,需要注意在dos/window下按一次回车键实际上输入的是“回车(CR)”和“换行(LF)”,而Linux/unix下按一次回车键只输入“换行(LF)”,所以修改的sh文件在每行都会多了一个CR,所以Linux下运行时就会报错找不到命令。

解决方法:

1.在windows上可以通过各种编辑器转换下格式即可;

2.已经放到服务器上的,可以通过vi/vim修改格式

vim test.sh
#查看文件格式(fileformat=dos):set ff
#修改文件格式:set ff=unix
#或者::set fileformat=unix
#保存退出即可
:wq

参考博客

Linux 启动 停止 重启 jar Shell脚本相关推荐

  1. linux停止jar程序,Linux 启动停止SpringBoot jar 程序部署Shell 脚本的方法

    废话不多说了,先给大家上代码,具体代码如下所示: #!/bin/bash cd `dirname $0` CUR_SHELL_DIR=`pwd` CUR_SHELL_NAME=`basename ${ ...

  2. linux启动脚本springboot,Linux 启动停止SpringBoot jar 程序部署Shell 脚本的方法

    废话不多说了,先给大家上代码,具体代码如下所示: #!/bin/bash cd `dirname $0` cur_shell_dir=`pwd` cur_shell_name=`basename ${ ...

  3. linux启动/停止/重启MySQL的命令

    linux如何启动/停止/重启MySQL数据库服务?两种方式,一种是使用service启动/停止/重启,另一种则是使用mysqld脚本启动/停止/重启. linux启动MySQL命令 [root@yu ...

  4. Linux centos开机执行JAR Shell脚本

    Linux centos开机执行shell脚本 Linux centos开机执行 java  jar 1.编写jar执行脚本 vim start.sh 加入如下内容(根据自己真实路径与数据进行编写) ...

  5. Linux shell脚本启动 停止 重启jar包

    只需将jar文件的路径替换到APP_NAME的值及JAVA_HOME的值就可以了,其他不用改. 注意:window编辑的shell文件,通过WinSCP上传的Linux服务器,需要改变文件的格式(查看 ...

  6. linux stoping redis,redis的cluster集群模式shell一键启动/停止/重启/清缓存脚本

    1 redis集群配置模板 vi /opt/cachecloud/conf/redis-cluster-template.conf daemonize yes tcp-backlog 511 time ...

  7. Linux启动/停止/重启Mysql数据库的方法

    1.查看mysql版本 方法一:status; 方法二:select version(); 2.Mysql启动.停止.重启常用命令 a.启动方式 1.使用 service 启动: [root@loca ...

  8. Linux启动/停止/重启防火墙

    重启后生效 chkconfig 方式 开启: chkconfig iptables on 关闭: chkconfig iptables off 即时生效,重启后失效. service 方式 开启: s ...

  9. linux启动,重启,停止 jar,.sh脚本

    linux启动,重启,停止 jar,.sh脚本 #配置jar名称 APP_NAME=receiver.jar#使用说明,用来提示输入参数 usage() { echo "Usage: sh ...

最新文章

  1. 数据可视化与数据预处理
  2. POST和PUT HTTP REQUEST有什么区别?
  3. 计算机软件的输出设备有哪些,计算机输出设备有哪些?计算机输出设备介绍
  4. java技术_JAVA-JDBC技术
  5. Comptia Strata认证考点相关情况【2018.06.05更新】
  6. Android集成三方浏览器之Crosswalk
  7. java三件套_Java开发人员应该知道的三件事
  8. webpackjsonp 还原_具有催化CO2还原性能的非贵金属配合物的配体设计
  9. db2 存储过程异常处理
  10. spring5.0学习笔记4
  11. 数据集中异常值的处理之lof,iforest算法
  12. java roundup函数_随手记之Linux 2.6.32内核SYN flooding警告信息
  13. python 微信投票脚本_Python自动化刷投票脚本开发,微信投票再也不需要发红包了...
  14. L - Ray in the tube Gym - 101911L (暴力)
  15. 数据库双活和ALWAYSON相比的四大优势
  16. StopWatch使用注意S
  17. js中身份证校验规则
  18. [java]干支纪年法(循环练习)
  19. 阿里云服务器ECS通用型g5和ECS通用型g6实例区别在哪?如何选择?
  20. PDFgetXPDFgetN 软件分享

热门文章

  1. 查看centos自带jdk版本并卸载
  2. 【MFC/C++操作Excel】Excel篇 (OLE/COM)
  3. Selenium IDE介绍
  4. Flexsim AGV
  5. linux打包排除掉log文件中内容,tar打包且排除某个文件
  6. 子域名收集 -- Maltego CE
  7. pytorch手写VGG16网络,两种写法,低阶基础写法
  8. Linux串口驱动程序(1)-tty驱动程序架构
  9. 2021-11-04 《计算机操作系统》(第四版)学习笔记:第四章
  10. 图像处理(12)--图像各种噪声及消除方法