阿里云发布Java web项目,linux让程序永久运行,关闭终端后也后台运行

编程入门 行业动态 更新时间:2024-10-09 23:17:24

<a href=https://www.elefans.com/category/jswz/34/1770131.html style=阿里云发布Java web项目,linux让程序永久运行,关闭终端后也后台运行"/>

阿里云发布Java web项目,linux让程序永久运行,关闭终端后也后台运行

nohup

是 no hang up 的缩写,就是不挂断的意思。

nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。
在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中。

命令案例:

nohup command > myout.file 2>&1 &

在上面的例子中,
0 – stdin (standard input),
1 – stdout (standard output),
2 – stderr (standard error) ;
2>&1是将标准错误[2]重定向到标准输出[&1],标准输出[&1]再被重定向输入到myout.file文件中。最后再加上一个&表示后台运行。

nohup和&的区别

& : 指在后台运行

nohup : 不挂断的运行,注意并没有后台运行的功能,,就是指,用nohup运行命令可以使命令永久的执行下去,和用户终端没有关系,例如我们断开SSH连接都不会影响他的运行,注意了nohup没有后台运行的意思;&才是后台运行

&是指在后台运行,但当用户推出(挂起)的时候,命令自动也跟着退出

那么,我们可以巧妙的吧他们结合起来用就是
nohup COMMAND &
这样就能使命令永久的在后台执行
例如:

  1. sh test.sh &
    将sh test.sh任务放到后台 ,关闭xshell,对应的任务也跟着停止。
  2. nohup sh test.sh
    将sh test.sh任务放到后台,关闭标准输入,终端不再能够接收任何输入(标准输入),重定向标准输出和标准错误到当前目录下的nohup.out文件,即使关闭xshell退出当前session依然继续运行。
  3. nohup sh test.sh &
    将sh test.sh任务放到后台,但是依然可以使用标准输入,终端能够接收任何输入,重定向标准输出和标准错误到当前目录下的nohup.out文件,即使关闭xshell退出当前session依然继续运行。

后台永久发布Java web项目

当我将springboot程序达成jar包后,放入linux中,后台永久发布项目,关闭终端,关闭远程连接项目都在运行。
命令为
nohup java -jar xxxx.jar > myout.file 2>&1 &
或者不指定输出文件名,会默认创建nohup.out文件
nohup java -jar xxxx.jar &

完成后,可以输入
jobs命令查看,注意此命令有会话的含义,如果关闭远程连接,再次连接远程连接,属于第二个会话,此命令查不出来之前的程序的。
可以利用top命令查看后台程序

想关的话,kill PID
比如我这个输入
kill 9603就关了

我重新再开启一下:


扩展命令,可以动态监控输出的文件日志
tailf 文件

说到监控日志了,刚好我又发现了我一个地方写到thymeleaf坑里了

报错了,说是/login页面解析错误,或者不存在
解决方式是

更多推荐

阿里云发布Java web项目,linux让程序永久运行,关闭终端后也后台运行

本文发布于:2024-02-06 07:21:45,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1747183.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:阿里   终端   后台   程序   项目

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!