linux shell的创建与启动
阅读原文时间:2023年07月14日阅读:1

1.创建shell脚本,输入linux命令:

touch my.sh

2.编辑shell脚本,输入linux命令:

vi my.sh

3.在shell脚本进行编辑:顺便记一次Jenkins的自动启动的命令

#!/bin/bash

#export BUILD_ID=dontKillMe这一句很重要,这样指定了,项目启动之后才不会被Jenkins杀掉。
export BUILD_ID=dontKillMe

#Jenkins中编译好的jar名称
jar_name=platform-1.0.0.RELEASE.jar

#复制jar包到/usr/local/kidcloud/yml下的admin
cp ${jar_name} /usr/local/kidcloud/yml/platform

#进入admin下
cd /usr/local/kidcloud/yml/platform

#把yml文件压缩到jar包中
jar -uvf ${jar_name} BOOT-INF/classes/application.yml
jar -uvf ${jar_name} BOOT-INF/classes/application.properties
#把jar包复制到 /usr/local/kidcloud下
cp ${jar_name} /usr/local/kidcloud

#进入kidcloud下
cd /usr/local/kidcloud

#获取运行编译好的进程ID,便于我们在重新部署项目的时候先杀掉以前的进程
pid=$(cat /usr/local/kidcloud/codespace/platform.pid)

#杀掉以前可能启动的项目进程
kill -9 ${pid}

#启动jar,指定SpringBoot的profiles为test,后台启动
nohup java -jar -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/usr/local/kidcloud/heapdump_platform.hprof -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m -Xms1024m -Xmx1024m -Xmn256m -Xss256k -XX:SurvivorRatio=8 -XX:+UseConcMarkSweepGC -Dspring.profiles.active=test ${jar_name} &

#将进程ID存入到rabbitmq.pid文件中
echo $! > /usr/local/kidcloud/codespace/platform.pid

4.对shell进行授权,输入linux命令:

chmod +x my.sh

5.执行,输入linux命令:

./my.sh