web-dev-qa-db-ja.com

bashのshopthuponexitがデフォルトでオフになり始めたのはいつですか?

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

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

その日の後半のある時点で、Ctrl + Dを押してログアウトしました。

金曜日に同じボックスにログインしたところ、tailプロセスがまだ実行されていることがわかりました。私がログアウトしたとき、彼らがやめることを期待していました。

さらに掘り下げると、shopt huponexitは、そのボックス、および私が試した他のすべてのLinuxボックス、および私が試した1つのMac OSXボックスではoffに設定されています。

これがデフォルトでoffではなくonになり始めたのはいつですか?

8
Roger Lipscombe

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=cce855bc5b117cb7ae70064131120687bc69fac

7
JigglyNaga