1、编写shell脚本

# 服务名称
NAME='server'
# 指定配置文件
ARGS='-Dspring.profiles.active=zzd'echo $NAME
PID=`ps -ef | grep "$NAME" | grep -v "$0" | grep -v "grep" | awk '{print $2}'`
echo $PID
echo "--start to kill $PID ----------"for id in $PID
do
kill  $id
echo "killed $id"done
echo "--end kill $PID------------"
# 启动jar包
nohup java -Xms256m -Xmx2048m -XX:PermSize=128M -XX:MaxPermSize=256M $ARGS -jar /home/oa/server/$NAME.war 1>/dev/null 2>&1 &

注意这里的换行符需要用Unix系统的换行符
可以借助notepad++,双击截图中的位置选择Unix

截图上$ARGS这个参数的位置写错了,导致无法直接使用指定的配置文件启动

 # 包位置
export package=$1
# 服务名称
export server_name=$2
# 配置文件 -Dspring.profiles.active=dev
export config_file=$3
export java_home=$(cat /etc/profile |grep JAVA_HOME |grep -v PATH |awk -F '=' '{print $2}')# 停止服务
function kill_server_normal {ps aux |grep $package |grep $server_name |grep -v start.sh |grep -v grep |awk '{print $2}'|while read id
dokill -9 $idecho "killed $id"
done
}# 启动服务
function start_server_normal {sleep 5
nohup nohup java -Xms256m -Xmx2048m -XX:PermSize=128M -XX:MaxPermSize=256M -jar $package/$server_name.jar 2>&1 &
sleep 5
}kill_server_normal
echo "finish killed method"
start_server_normal
echo "server started"

使用方法
./start.sh /home/java weather -Dspring.profiles.active=dev

2、开机执行脚本

2.1修改Linux的开机启动配置文件(/etc/rc.d/rc.local)

vim /etc/rc.d/rc.local

2.2将脚本的全路径插入到开机启动配置文件里

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.touch /var/lock/subsys/local
/home/oa/server/start.sh

使用脚本启动java程序相关推荐

  1. shell 启动java程序_Shell 脚本启动java程序

    最近,做好了一段儿程序,但是在ubuntu系统下需要用命令行输入命令启动.于是研究了一下Shell脚本启动的方法. 刚开始接触Shell脚本,一头雾水.不过最终还是实现了,和大家分享一下: 不过需要注 ...

  2. aix shell脚本 运行java_IBM AIX shell脚本启动java程序不成功

    今天写了个很简单的java程序启动脚本,放在/usr/jspider/下面,直接cd到/usr/jspider下面可以正常运行.而通过chkconfig注册为服务后,servicemyserverst ...

  3. 26. linix脚本启动java程序

    (1)linux脚本文件: 1 #!/bin/bash 2 3 export JAVA_HOME=/opt/jdk1.6.0_21 4 export PATH=$JAVA_HOME/bin:$PATH ...

  4. 利用脚本启动java程序

    今天在工作中,需要写一个shell脚本,启动一个socket程序,从而模拟短信网关.查了一些资料,终于搞定了,现在记录一下,方便大家查阅. 为了说明使用方法,我们就用最简单的程序来实现,比如我们要运行 ...

  5. linux启动java jar文件_推荐:Linux启动Java程序jar包Shell脚本

    #!/bin/sh# 该脚本为Linux下启动java程序的脚本## author: luandy# date: 2021/1/15## 特别注意:# 该脚本使用系统kill命令来强制终止指定的jav ...

  6. java -jar 停止_推荐:Linux启动Java程序jar包Shell脚本

    每次启动Java程序jar包的时候,难道你还在手敲java -jar xxserver.jar--?边敲边想着都需要追加哪些参数? 今天就推荐给大家一个几乎通用的Shell脚本,它支持Java程序Ja ...

  7. wrapper后台启动java程序

    文章目录 1,下载wrapper 2,使用wrapper后台启动java程序 2.1,编写java样例程序 2.2,配置wrapper 2.3,拷贝启动脚本 2.4,启动服务 1,下载wrapper ...

  8. shell脚本触发java程序支持传参补跑 +crontab定时器+每天生成日期文件_03

    文章目录 1. 脚本升级 2. 执行测试 3. 脚本关键词简述 补充案例 上一篇: shell脚本触发java程序支持传参补跑 +crontab定时器_02 https://gblfy.blog.cs ...

  9. shell脚本触发java程序支持传参补跑 +crontab定时器_02

    文章目录 1. 创建定时任务 2. 查看定时任务是否执行 上一篇: shell脚本触发java程序支持传参补跑_01 https://gblfy.blog.csdn.net/article/detai ...

最新文章

  1. window 下相关命令
  2. mysql 前后代表什么_MySQL的锁
  3. 《数据结构》是计算机应用,《数据结构》期中测试-2014计算机应用技术用.doc
  4. gradle使用maven_使用Gradle – 2019版从Travis可靠发布到Maven Central
  5. Linux文件与目录管理常用命令
  6. 一文搞懂浏览器同源策略
  7. 《Java编程的逻辑》终于上市了!,java开发面试笔试题
  8. JAVASE1~5补充
  9. Android开源库集合(UI效果)
  10. python 主线程_Python 主线程捕获子线程异常
  11. usermod+用户密码管理+mkpasswd
  12. MacOS Monterey 12.3 (21E30) OC 0.7.9 / Cl 5145 / PE 三分区原版黑苹果镜像
  13. 浅谈Linux管线命令grep
  14. Excel数据分析案例二——预测销售额
  15. Windows 无法启动 vmwave workstation server 服务 错误1075
  16. 【PLC】01-使用PLC控制步进电机带威纶通触摸屏
  17. TabLayout+Viewpage滑动
  18. 华为交换机的基本配置命令
  19. 解决AMD Software提示图形驱动版本不匹配问题
  20. B2G商城APP解决方案开发

热门文章

  1. 电脑回收站删除的文件如何找回呢?
  2. ae教程 (七)动效插件 (三)炫彩图案
  3. MT6739,MT6762 MTK Browser打开网页预加载时,界面闪屏
  4. 深层循环神经网络(Deep RNNs)
  5. hyperledge部署链码遇到 mycc != myc问题
  6. 通信领域BOSS系统
  7. 为什么百度权重会下降?百度权重怎么查询?怎么提高百度权重?
  8. SQL left join 左表合并去重技巧总结
  9. 超强综述 | 陈峰等纵论口腔菌群何以影响全身(全文翻译)
  10. linux_comand