Bash手册说
如果已使用 shopt 设置了 huponexit shell 选项(请参阅第 4.3.2 节 [The Shopt Builtin],第 62 页),当交互式登录 shell 退出时,Bash 会向所有作业发送 SIGHUP。
为什么 huponexit 在以下情况下不起作用?
在一个交互式外壳中
$ shopt -s huponexit
$ sleep 4321 &
[1] 13816
$ exit
然后在另一个外壳中
$ ps -j 13816
PID PGID SID TTY STAT TIME COMMAND
13816 13816 13728 ? S 0:00 sleep 4321
谢谢。
很重要。
然后CtrlD退出(使用
logout
, 而不是exit
您的示例),并且sleep
也被杀了。