2012-06-16 4 views
1

У меня есть сценарий оболочки, запускающий два java-процесса. Как убедиться, что, когда процесс сценария оболочки будет убит, все его дети тоже будут убиты? Например, когда я пытаюсь убить его, ява процессы остаются живы:Как закончить запуск JVM из сценария оболочки?

kill -9 myscriptID 
+0

Возможно, killall? – EdH

+0

Надеюсь, что 'myscript' ссылается на свой идентификатор процесса здесь. –

ответ

1

Вы можете проверить для всех процессов ява, запустив это:

ps -aux | grep *java* 

This выглядит, как он может помочь, а также.

0

Ваша команда kill убивает ваш скрипт, а не другие процессы, которые он породил. Best way to kill all child processes содержит несколько отличных ответов за убийство всего дерева.

Тем не менее, мне кажется, что лучше дизайн будет следить за ИКИ дочерних процессов, а не посылать родитель SIGKILL, отправить его SIGTERM (или есть какой-то другой путь), чтобы вызвать его грациозно убить его детей.

Смежные вопросы