bashのshopt huponexitは基本的にいつオフになりますか?

bashのshopt huponexitは基本的にいつオフになりますか?

月曜日の朝にボックスにログインsshし、次のコマンドを実行しました。

tail -f /var/log/foo/bar.log | grep something_interesting &

その日遅く、私はCtrl + Dを押してログアウトしました。

金曜日に同じボックスにログインし、tailプロセスがまだ実行中であることがわかりました。私がやめたとき、私は彼らがやめたと思いました。

詳しく調べた結果、このコンピュータと私が試した他のすべてのLinuxコンピュータだけでなく、私が試したMac OS Xコンピュータでもshopt huponexitoff

offいつからデフォルトではないに設定されていますかon

答え1

Bash 2.02で導入されたとき、デフォルトではオフになっていました。

@@ -119,6 +123,10 @@ int interactive = 0;
 /* Non-zero means that the shell was started as an interactive shell. */
 int interactive_shell = 0;

+/* Non-zero means to send a SIGHUP to all jobs when an interactive login
+   shell exits. */
+int hup_on_exit = 0;
+

http://git.savannah.gnu.org/cgit/bash.git/commit/shell.c?id=cce855bc5b117cb7ae70064131120687bc69fac0

関連情報