您好,欢迎来到保捱科技网。
搜索
您的当前位置:首页nohup 与 java -jar的区别

nohup 与 java -jar的区别

来源:保捱科技网

——作为程序员,经常会遇到这样一个问题,打个jar包,或者上线生产,于是乎面临的选择来了,java –jar or nohup?

下面我来扒一扒:

一、    java -jar a.jar &

直接启动jar文件,在当前会话进程中开启一个子进程来运行程序,这个子进程会随着会话进程的结束而结束。

这种情况适合短时间测试用。

二、     nohup java -jar a.jar&

先交代一下名词:

hangup (挂断)终端退出时会发送 hangup 信号来通知其关闭所有子进程。

nohup(不挂断,忽略挂断信号)

nohup 的使用是十分方便的,只需在要处理的命令前加上 nohup 即可,标准输出和标准错误缺省会被重定向到 nohup.out 文件中。一般我们可在结尾加上"&"来将命令同时

放入后台运行,也可用">filename2>&1"来更改缺省的重定向文件名。

这种情况适合在生产环境长时间运行。

 

nohup语法

语法:nohup Command [ Arg ... ] [ & ]   

描述:nohup 命令运行由  参数和任何相关的  参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。   

退出状态:该命令返回下列出口值:   

126 可以查找但不能调用 Command 参数指定的命令。   

127 nohup 命令发生错误或不能查找由 Command 参数指定的命令。   

否则,nohup 命令的退出状态是 Command 参数指定命令的退出状态。   

nohup命令及其输出文件   

nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( no hang up)。   

该命令的一般形式为:nohup command &   使用nohup命令提交作业   

如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件:   

nohup command > myout.file 2>&1 &   

在上面的例子中,输出被重定向到myout.file文件中。   

使用 jobs 查看任务。   

使用 fg %n 关闭。 

nohup java -jar motorcade_new.jar > nohup.out 2>&1 &

ps aux | grep 'java'

kill -9 24204

24204代表上一步查出的进程ID

 

 

 

 

 

 

转载于:https://my.oschina.net/LucasZhu/blog/1439199

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baoaiwan.cn 版权所有 赣ICP备2024042794号-3

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务