1

2 つの Java プロセスを開始するシェル スクリプトがあります。シェルスクリプトプロセスが強制終了されたときに、すべての子も強制終了されるようにするにはどうすればよいですか? たとえば、それを殺そうとすると、Java プロセスは生きたままになります。

kill -9 myscriptID
4

2 に答える 2

1

これを実行すると、すべての Java プロセスを確認できます。

ps -aux | grep *java*

これも参考になりそうです。

于 2012-06-16T05:47:46.947 に答える
0

killコマンドはスクリプトのみを強制終了し、スクリプトが生成した他のプロセスは強制終了しません 。すべての子プロセスを強制終了する最良の方法には、ツリー全体を強制終了するための優れた答えがいくつかあります。

とはいえ、より良い設計は、子プロセスの PID を追跡し、親SIGKILLを送信するのではなく、それを送信してSIGTERM(または他の方法で)、子プロセスを適切に強制終了させることです。

于 2012-06-16T05:50:32.177 に答える