为什么我执行的进程在终端被终止时也会终止

为什么我执行的进程在终端被终止时也会终止

为什么当我终止调用该脚本的脚本/终端时,我从 shell 脚本执行的进程会终止

答案1

每个进程都必须有一个父进程(至少用于收集退出状态)。请参阅man 2 wait。如果父进程死亡,则会向其子进程发送信号SIGHUP(请参阅man 7 signal)。SIGHUP是一个可捕获的信号,但如果子进程未捕获该信号,则默认操作是终止子进程。

看看man nohup是否能继续下去。

答案2

执行后台作业并保持其运行终端关闭后使用:

nohup command &>/dev/null &

相关内容