私が本とbashのマニュアルから理解している限り、それはそうです。ユーザーがbashからログアウトすると、nohupまたはdisownを使用していない場合、ユーザーによって開始されたすべてのバックグラウンド・ジョブが自動的に終了します。しかし、今日私はそれをテストしました:ログアウト時にbashがジョブを処理する方法は?
- 私のgnomeデスクトップにログインし、gnome-terminalにアクセスしました。
ありつのタブがターミナル内にあり、1で、私はテストと呼ばれる新しいユーザーを作成し、スクリプトを開始したテスト
su - test
としてログイン。その後
cat test.sh #!/bin/bash sleep 60 printf "hello world!!" exit 0 ./test.sh &
私はテストのログアウトと私はルートとしてのPS補助をexected、ジョブがまだ実行されていることが判明し、次のタブでは、タブに
- を閉じました。
これはどのようなことですか?
私はこの質問にはまだ受け入れ答えを持っているし、面白い読み物であるかもしれない[SU]に似た新しい問題があることをしないことに気づきましたsuperuser.com/questions/662431/what-exactly-determines-if-a-backgrounded-job-is-killed-when-the-hell-is-exited](http://superuser.com/questions/662431/what)シェルが終了したときにバックグラウンドジョブが強制終了するかどうかを正確に判断する) – Hennes