Linux 环境下启动,停止 jar

6 篇文章 0 订阅
4 篇文章 0 订阅

1. 普通运行

java -jar <name>.jar 

运行程序,ctrl+c 停止运行

2. 后台运行

java -jar <name>.jar &

 后台运行,关闭终端,停止运行

3. nohup命令运行   

nohup java -jar XXX.jar &

    当账户退出或终端关闭时,程序仍然运行。
    注意,该作业的所有输出被重定向到nohup.out的文件中。  

nohup java -jar <name>.jar > Log.log & 
或者
nohup java -jar <name>.jar >> Log.log & 

    所有输出被重定向到Log.log的文件中。"> Log.log" 该命令就是指定日志输出的文件。
    ">>"表示将输出以追加的方式重定向到Log.log中。     

nohup java -jar <name>.jar > Log.log 2>&1 & 
或者
nohup java -jar <name>.jar >> Log.log 2>&1 & 
或者
nohup java -jar <name>.jar > /dev/null 2>&1 & 


    标准输入文件(stdin):stdin的文件描述符为0,Unix程序默认从stdin读取数据。
    标准输出文件(stdout):stdout 的文件描述符为1,Unix程序默认向stdout输出数据。
    标准错误文件(stderr):stderr的文件描述符为2,Unix程序会向stderr流中写入错误信息。


    屏蔽输出,起到禁止输出作用:/dev/null 是一个特殊的文件,写入到它的内容都会被丢弃;

    如果尝试从该文件读取内容,那么什么也读不到。但是 /dev/null 文件非常有用,将命令的输出重定向到它,会起到"禁止输出"的效果。
    "> Log.log 2>&1" :表示将 stdout 和 stderr 合并后重定向到 Log.log

4. 停止应用程序

ps -ef | grep server_name
或者
ps aux|grep server_name.jar

运行上述命令中任何一个都可以拿到PID号

[root@VM_0_13_centos microservice]# ps aux|grep jar
root      9827  0.0  3.0 2253056 30900 ?       Sl    2019 150:34 java -jar heartRate_v2.jar
root     32482  0.0  0.0 112712   964 pts/4    R+   11:30   0:00 grep --color=auto jar
[root@VM_0_13_centos microservice]# ps aux|grep heartRate_v2.jar
root      9827  0.0  3.0 2253056 30900 ?       Sl    2019 150:34 java -jar heartRate_v2.jar
root     32597  0.0  0.0 112712   980 pts/4    R+   11:30   0:00 grep --color=auto heartRate_v2.jar
[root@VM_0_13_centos microservice]# ps -ef|grep java
root      3575 26683  0 11:37 pts/4    00:00:00 grep --color=auto java
root      9827     1  0  2019 ?        02:30:34 java -jar heartRate_v2.jar
[root@VM_0_13_centos microservice]# ps -ef| grep heartRate_v2.jar
root      3755 26683  0 11:37 pts/4    00:00:00 grep --color=auto heartRate_v2.jar
root      9827     1  0  2019 ?        02:30:34 java -jar heartRate_v2.jar
[root@VM_0_13_centos microservice]# ps aux|grep heartRate_v2.jar
root      3892  0.0  0.0 112712   976 pts/4    R+   11:38   0:00 grep --color=auto heartRate_v2.jar
root      9827  0.0  3.0 2253056 30900 ?       Sl    2019 150:34 java -jar heartRate_v2.jar
[root@VM_0_13_centos microservice]#

注意: 为什么ps aux |grep xxx 会出现grep --color=auto xxx 的结果,因为grep本身也是一个进程,ps会将grep进程的信息也显示出来。

根据查询结果得到pid=9827

kill -9 9827

执行既可以停止应用程序

 

5. 上述启动方式会将log重定向

下述方式可以不重定向log目录

nohup java -jar xxx.jar &

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十二月的雪7

你的鼓励将是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值