1、窗口被锁定,可按CTRL + C打断程序运行,关闭窗口程序停止运行

java -jar XXX.jar

2、窗口不被锁定,关闭窗口时,程序停止运行

java -jar XXX.jar &

3、nohup 意思是不挂断运行,当账户退出或终端关闭时,程序仍然运行,日志内容默认存入nohup.out 文件内

nohup java -jar XXX.jar &

4、日志内容默认存入temp.txt文件内

nohup java -jar XXX.jar >temp.txt &

5、/dev/null 2>&1    2代表标准错误,1代表标准输出。把日志输出到黑洞(就是这里不打印日志)

nohup java -jar XXX.jar >/dev/null 2>&1 &

//日志输出到file,这里file会被打开2次

command > file 2>file

//日志输出到file,这里file会被打开1次

command > file 2>&1

6、完整日志输出到log文件内

nohup java -jar XXX.jar >/data/log 2>&1 &

7.例子

#!/bin/bash

APP_NAME=server-1.6.0-1.6.0.jar

serverid=$2

cd /data/misc_apps/hero-provider-$serverid/

#使用说明,用来提示输入参数

usage() {

echo "Usage: sh robotcenter.sh [start|stop|restart|status]"

exit 1

}

#检查程序是否在运行

is_exist(){

pid=`ps -ef|grep /data/misc_apps/hero-provider-$serverid/|grep -v grep|grep -v PPID|awk '{ print $2}'`

# 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

cp -fr /root/${APP_NAME} /data/misc_apps/hero-provider-$serverid/

nohup java -jar "/data/misc_apps/hero-provider-$serverid/$APP_NAME" > /data/misc_apps/hero-provider-$serverid/logs/server.log 2>&1 &

fi

}

#停止方法

stop(){

is_exist

if [ $? -eq "0" ]; then

line=12

port=99999

for ID in $(cat -A /data/nfs/afk-conf/ServerConfigStruct.txt)

do

NUM=$line

S_ID=$(awk 'NR=='$NUM' {print $1}' /data/nfs/afk-conf/ServerConfigStruct.txt)

S_ID=${S_ID%.*}

T_NUM=$(awk 'NR=='$NUM' {print $6}' /data/nfs/afk-conf/ServerConfigStruct.txt)

T_NUM=${T_NUM%.*}

line=`expr 1 + $line`

if [ "$S_ID"X != "$serverid"X ]

then

continue

else

echo "find port"

port=$T_NUM

break

fi

done

echo $port

curl --data "cmd=stop&zhangnian=nidaye@skyrim" http://localhost:$port

# curl http://localhost:5400/summitTest?cmd=stop

sleep 5s

kill -15 $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

sleep 5

start

}

#根据输入参数,选择执行对应方法,不输入则执行使用说明

case "$1" in

"start")

start

;;

"stop")

stop

;;

"status")

status

;;

"restart")

restart

;;

*)

usage

;;

esac

java -jar -xx_java 启动方式 java -jar xx.jar相关推荐

  1. java win10窗口启动假死_window执行jar包会出现假死现象解决

    windows jar包启动的几种方式介绍 java -jar xxx.jar(jar包的路径),最普通简单的方式,通过windows的命令行窗口启动,并在命令行窗口运行,输出.可以在启动的时候增加参 ...

  2. 服务器部署jar包的方式(java)

     相关重要指令: //部署运行jar包的指令,这种方式会进入运行的终端界面 nohup java -jar zjyn-0.0.1-SNAPSHOT.jar //部署运行jar包的指令.在之前的基础上, ...

  3. java 启动方式 java -jar xx.jar

    1.窗口被锁定,可按CTRL + C打断程序运行,关闭窗口程序停止运行 java -jar XXX.jar 2.窗口不被锁定,关闭窗口时,程序停止运行 java -jar XXX.jar & ...

  4. java数组初始化的方式,java中初始化数组的方式有几种

    java中初始化数组的方式有几种 发布时间:2020-06-01 16:12:45 来源:亿速云 阅读:153 作者:鸽子 三种初始化方式: 1.静态初始化:创建+赋值 2.动态初始化:先创建再赋值 ...

  5. java web常用权限方式,java web项目的几种权限控制方法

    一.spring boot项目,使用@Configuration注入WebMvcConfigurer来实现拦截器 如: @Configuration public class HighersoftWe ...

  6. java linux 服务_java项目部署Linux服务器几种启动方式总结经验

    一:两种部署包: 部署之前先说下两种包,java项目部署到服务器一般有用war包的,也有用jar包的,微服务spring-cloud普及后大部分打包都是jar,部署之前先搞清楚自己要打war包还是ja ...

  7. jar包的四种启动方式

    &&&&&jar包的四种运行方式&&&&& #1.直接启动: java -jar demo.jar 这种启动方式适合自己 ...

  8. java包 agent_使用Maven打包可运行jar和javaagent.jar的区别

    简介 javaagent 是 Java1.5 之后引入的新特性,其主要作用是在class被加载之前对其拦截,以插入我们的字节码. java1.5 之前使用的是JVMTI(jvm tool interf ...

  9. Hi,运维,你懂Java吗-No.3:java系统的启动

    作为运维,你不一定要会写Java代码,但是一定要懂Java在生产跑起来之后的各种机制. 本文为<Hi,运维,你懂Java吗>系列文章 第三篇,敬请关注后续系列文章 欢迎关注  龙叔运维(公 ...

  10. java改变变量编码方式_Java 8中的5个功能将改变您的编码方式

    java改变变量编码方式 Java 8在JVM和语言级别都包含了一些非常令人兴奋的功能. 尽管最初为该发行版设想的某些功能已扩展到第9版,或已推出第9版,但实际上有数十个新功能. 许多新添加的内容在编 ...

最新文章

  1. python无师自通配套资源_Python Tkinter Pack布局管理器(超级详细,看了无师自通)...
  2. crontab 定时任务配置
  3. 成功的秘诀是什么_学习编码的10个成功秘诀
  4. 全球最伟大50名商业领袖,任正非和马云未入选,中国只有一人上榜
  5. Flutter TextField 设置默认值和光标位置
  6. JAVA自定义Mybatis注解
  7. 十大热门的 JavaScript 框架和库
  8. VMware ESXI虚拟机及虚拟系统修改MAC地址的方法
  9. 通达信报计算机内存不足,导入通达信股票数据至内存数组中的方法和代码
  10. 【VUE】vue分页插件share
  11. 群晖搭建discuz论坛
  12. 【C语言】求最小公倍数三种方法
  13. delphi 域名解析IP 域名转为IP地址
  14. NAT地址转换(超详细解说版)
  15. seaborn seaborn色板的使用设置(二)
  16. Python获取所有股票代码以及股票历史成交数据分析(二)
  17. Camera ITS测试
  18. Layui 表格 list页显示图片
  19. TeamCity打包部署镜像
  20. nginx配置监听443端口,开启ssl协议,走 https 访问

热门文章

  1. 苹果Mac 软件出现意外退出解决方法
  2. python实现雪花飘落效果_python实现雪花飘落效果实例讲解
  3. 牛客练习赛30-A/C
  4. 深空天体反差指数计算
  5. ept技术_EPT和VPID简介 - osc_3xz91vxi的个人空间 - OSCHINA - 中文开源技术交流社区
  6. 从零开始学springboot笔记(一)-Spring boot之Hello Word
  7. 计算机网络里的DHCP是什么,路由器设置中的dhcp是什么意思?
  8. 原生js实现轮播图效果
  9. 计算机网络之网络层-网络层拥塞控制
  10. 91-Lucene+ElasticSeach核心技术