Linux命令可以在后台运行,不随shell的关闭而关闭


我们在服务器上运行的了一个服务,肯定不想CTRL+C退出日志打印平台后,服务就停止了,即使是我们关闭了远程访问服务器的Shell窗口,也不要关闭。

下面就是解决这个问题的干货了:

1、&

在运行命令的后面添加&,表示让让程序在后台运行,所以你CTRL+C后退出了日志打印,服务仍然会运行到后台。

2、nohup

可是你发现没有,即使添加了&,我们关闭访问服务器的窗口后,服务还是被关闭了,这时候我们就要用到nohup命令了。

3、sh脚本

有时我们一些命令参数很多比较复杂的时候,可以预先把我们的命令写到一个脚本中,其实就是写到一个文件中,这样就不用反复的去打印一大堆了命令了。命名的话,可以命名为name.sh,记得创建的脚本要使用户具备执行权限哦。

4、总结and举例

举例:我们需要执行一个java的程序,需要运行一下命令:

java -jar start-site.jar
  • 1

为了达到使我们这个服务一直运行在服务器上,不会自动关闭:
1、首先我们创建了一个文件start-site.sh,在其中放入上面的命令。
2、接下来,我们就可以运行让这个应用后台运行的命令了:

nohup sh start-site.sh &
  • 1

3、可以测试了,怎么折腾,这个服务都是正常运行的,除非你强制杀掉这个进程。

原文地址:https://www.cnblogs.com/andy0816/p/13819109.html