Ame*_*ina 19 zsh nohup background-process
假设我在远程机器上运行以下命令,以防止在断开终端连接时终止作业。
nohup ./my_script.sh &
Run Code Online (Sandbox Code Playgroud)
当我尝试退出终端时,收到以下警告:
zsh: you have running jobs
Run Code Online (Sandbox Code Playgroud)
我想那没问题。它只是告诉我我有一个工作/进程在后台运行。如果我断开终端,作业/进程将继续运行,对吗?
ali*_*nth 26
是的,没关系。子进程将收到一个 HUP 信号,但由于您的nohup
.
如果您不想看到该消息,只需将作业 ID 传递给disown
,如下所示:
disown %1
Run Code Online (Sandbox Code Playgroud)
或者,使用&!
(特定于zsh 的技巧)开始工作:
nohup ./my_script.sh &!
Run Code Online (Sandbox Code Playgroud)