linux 停止jar 指令,Linux编辑启动、停止与重启springboot jar包脚本实例
前言
springboot的配置文件中,配置文件的名字都有各自的意义跟用途
dev 开发环境
prod 生产环境(默认)
test 测试环境
加载指定配置文件 --spring.profiles.active=prod
springboot加载jar包的方式有
// 直接在控制台进行启动,缺点就是控制台关闭项目也就关闭了。 java -jar bootdo.jar // 这种方式可以运行在后台,但是如果推出了shell的话,那也会挂 java -jar /bootdo-2.0.0.jar > bootdolog.file 2>&1 & // 加上nohup的话,即使推出shell,也不影响。 nohup java -jar /bootdo-2.0.0.jar > bootdolog.file 2>&1 &
解释
nohup表示永久运行。&表示后台运行
> 代表重定向到哪里
1 表示stdout标准输出,系统默认值是1,所以">/dev/null"等同于"1>/dev/null"
2 表示stderr标准错误
nohup ./mqnamesrv >/home/cxb/mqnamesrv.out 2>&1 & 即标准输出到mqnamesrv.out中,接着,标准错误输出重定向等同于标准输出,输出到同一文件中。
在服务器上通过如下方式启动成功之后,如果涉及到重新启动,那么你需要通过ps -ef | grep bootdo 查询到进程号,再通过kill -s 9 ${pid} 进行杀死再重新启动,很是麻烦。
nohup java -jar /bootdo-2.0.0.jar > bootdolog.file 2>&1 &
一两次还好说,如果涉及到多次,那就有些崩溃了。
这样,可以通过编写一个shell脚本来进行启动(start)停止(stop)重启(restart)操作,一步到位,方便高效
在自定义目录创建 wss.sh 脚本,编辑内容如下。
#!/bin/bash #这里可替换为你自己的执行程序,其他代码无需更改 APP_NAME=websocketserver-0.0.1-SNAPSHOT.jar #使用说明,用来提示输入参数 usage() { echo "Usage: sh 脚本名.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}" ]; 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 /mnt/ssd1/project/websocket/$APP_NAME > /mnt/ssd1/project/websocket/websocketserverlog.file 2>&1 & echo "${APP_NAME} start success" fi } #停止方法 stop(){ is_exist if [ $? -eq "0" ]; then kill -9 $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 } #重启 restart(){ stop start } #根据输入参数,选择执行对应方法,不输入则执行使用说明 case "$1" in "start") start ;; "stop") stop ;; "status") status ;; "restart") restart ;; *) usage ;; esac
在标红接头行配置启动命令。
之后就可以通过 wss.sh start | stop | restart 实现启动,停止,重启操作了。
补充下
sh xxx.sh与./xxx.sh区别
sh xxx.sh 是不需要有执行权限
./xxx.sh 是需要有执行权限的,可以通过 chmod +x xxx.sh 赋予权限
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
linux 停止jar 指令,Linux编辑启动、停止与重启springboot jar包脚本实例相关推荐
- Linux系统安装Java和mysql并关联DBeaver,上传Springboot jar包,数据库如何防止黑客攻击
Linux系统安装Java 安装版本jdk-8u171-linux-x64.tar.gz1,上传到linux的 root目录下 2,tar -zxvf jdk-8u171-linux-x64.tar. ...
- linux蜂鸣器驱动指令,linux蜂鸣器驱动 蜂鸣器--LINUX.doc
linux蜂鸣器驱动 蜂鸣器--LINUX 导读:就爱阅读网友为您分享以下"蜂鸣器--LINUX"的资讯,希望对您有所帮助,感谢您对92的支持! //mux = 1/16 tcfg ...
- java war启动慢_解决springboot war包在tomcat部署时启动慢的问题
web.jpg 最近测试服务器tomcat发布一次很慢,为了解决这个问题,特地看了tomcat的log文件,启动日志在tomcat/logs/catalina.out文件中. 1.INFO:org.a ...
- Linux编辑启动停止重启springboot jar包脚本
springboot的配置文件中,配置文件的名字都有各自的意义跟用途 dev 开发环境 prod 生产环境(默认) test 测试环境 加载指定配置文件 --spring.profiles.activ ...
- linux tomcat 进程杀掉_Linux下启动停止查看杀死Tomcat进程
启动 一般是执行tomcat/bin/startup.sh,sh tomcat/bin/startup.sh 停止 一般是执行 sh tomcat/bin/shutdown.sh脚本命令 查看 执行p ...
- linux磁盘配额指令,Linux磁盘配额相关指令
Linux磁盘配额相关指令 1.Quota的作用主要有: 1)限制某一群组所能使用的最大磁盘配额 2)限制某一用户的最大磁盘配额 3)以Link的方式,来使邮件可以作为限制的配额(更改/var/spo ...
- linux中top指令,Linux下top命令详解
原标题:Linux下top命令详解 1.简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top显示系统当前的进程和其他状况 ...
- linux加解密指令,Linux加解密支持模块代码总体描述
原标题:Linux加解密支持模块代码总体描述 1.3.4. Linux内核对加密的特性支持分析Linux内核加密特性,就要要根据不同算法所表现出来的特征进行总结.以下通过分组密码.Hash函数.随机数 ...
- linux修改时间指令,Linux 修改时间的指令
查询现在的时间 date "+%Y%m%d%H%M.%S" %Y->年 %m->月 %d->日 %H->时 %M->分 %S->秒 查出来后可直 ...
最新文章
- 把时间当作朋友(第一版)笔记
- 实验2(第二章课后习题)
- jdk12源代码文件_JDK 11:轻松取出单文件Java源代码程序
- hive 导出json格式 文件_Magicodes.IE在.NET Core中通过请求头导出多种格式文件
- java版 高斯过程_高斯过程scikit-learn - 异常
- MSP430使用__delay_cycles实现延时1ms和1us
- linux中可以使用-af含义,关于Windows中的linux:AF_UNIX
- python冒泡排序_python实现基本算法之冒泡排序(Bubble Sort)
- 如何查看IOS系统APP的包名
- 调试器如何工作(2)
- 数据结构—顺序表基本操作(c语言代码)
- 实用的chrome插件
- Idea查看 破解码
- Linux下Tomcat中文乱码解决
- linux虚拟机ping不通外网问题
- 用 VS2005 类设计器设计类
- android 汉字字母排序,android recycleView自定义字母检索A-Z排序滑动通讯录汉字英文相互转换...
- One or more PGP signatures could not be verified
- 如何看懂congestion map
- 如何在 Windows 10 中安装 WSL2 的 Linux 子系统
热门文章
- 上手测试GaussDB(for Redis) 和开源 Redis,只为推荐质优价廉的Redis
- 语义级代码克隆检测数据集的评估与改进
- 超大超详细图解,让你掌握Spark memeoryStore内存管理的精髓
- 文字识别:关键信息提取的3种探索方法
- 华为云PB级数据库GaussDB(for Redis)揭秘第五期:高斯 Redis 在IM场景中的应用
- 教你用Python自制拼图小游戏,轻松搞定熊孩子
- 干货分享丨玩转物联网IoTDA服务系列五-智能家居煤气检测联动
- react里面的this_React 为啥要绑定this
- MATLAB一维数组的创建与元素提取
- Markdown编辑器基本语法