准备工作
安装nohup
#浏览器访问如下地址,搜索 coreutils 下载coreutils-8.22-24.el7.x86_64.rpm https://mirrors.aliyun.com/centos/7.9.2009/os/x86_64/Packages/ #上传rpm到目标服务器,执行安装命令 rpm -ivp coreutils-8.22-24.el7.x86_64.rpm --force --nodeps #检查是否安装成功 rpm -qa | grep coreutils nohup --vesrion
编写脚本
随便起名,此处 vi run.sh
#!/bin/sh #name:jar包启动脚本;使用示例 sh run.sh start #date:2022-8-18; #author:dongwn #jar包名称: APP_NAME=test-1.0-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 #此处注意修改jar和log文件文件位置: nohup java -jar /root/$APP_NAME > test.log 2>&1 & #此处打印log日志: tail -f /root/test.log fi } #停止脚本 stop(){ is_exist if [ $? -eq "0" ]; then kill -9 $pid else echo "${APP_NAME} is not running" fi } #显示当前jar运行状态 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 exit 0
运行脚本
sh run.sh start
日志与验证
cd到test.log所在路径 ,执行以下命令查看日志情况
tail -f test.log
查看端口情况
netstat -lntp