退出终端,运行“ nohup ./my_script&” =>“您正在运行作业”。可以退出吗?


12

假设我在远程设备上运行以下命令,目的是防止在断开终端连接时杀死工作。

nohup ./my_script.sh &

当我尝试退出终端时,收到以下警告:

zsh: you have running jobs

我想没关系。这只是告诉我在后台运行作业/流程。如果我断开终端的连接,作业/过程将继续运行,对吗?


我发现zsh的nohup坏了,没有做您想要的。大部分时间都拒绝工作。尽管有一次我尝试在zsh中将ffmpeg与disown结合使用时遇到问题,所以还是开始使用bash shell并在其中运行nohup。
Sridhar Sarnobat '16

Answers:


19

是的,很好。子进程将收到HUP信号,但是由于您的,该进程不会死nohup

如果您不想看到该消息,只需将工作ID传递给disown,如下所示:

disown %1

或者,使用&!(zsh特有的技巧)开始工作:

nohup ./my_script.sh &!
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.