Во-первых, почему Вы хотите уничтожить какого-либо из них? Если процесс использует слишком много ресурсов, можно просто вложить PID top
:
top -n 1
Если они должны быть перезапущены на периодической основе или реагировать на внешние стимулы, используйте управление процессами:
while true
do
java -jar MyApp.jar &
my_app_pid=$!
while ! whatever_makes_me_think_my_app_should_be_restarted
do
sleep 60
done
kill $my_app_pid
done
Изменение параметров имеет значение к приложению таким образом, это не лучшая идея. Вы могли измениться на 0$ т.е. само название программы. Большинство программ не заботится об этом, но некотором изменении о своем поведении на основе того (например, если можно назвать тот же двоичный файл различными именами как IIRC с mtools и busybox):
bash -c 'exec -a mysleep sleep 100'
ps aux | grep sleep
hl 20818 0.0 0.0 5732 576 pts/10 S+ 10:01 0:00 mysleep 100
или Вы используете среду:
bash -c 'IDSTRING=PROC1 exec sleep 100'
PID=20936
tr '\0' '\n' </proc/"$PID"/environ | grep IDSTRING
IDSTRING=PROC1
или Вы запускаете процесс со сценария обертки, который пишет PID и дополнительную информацию (для сообщения процессов независимо) в файл журнала.
exec -a
передачи mysleep
как нулевой аргумент sleep
. Это полезно. Я должен буду разработать, как заставить его работать с jar
файлы.Спасибо.
– Peter Wood
17.04.2013, 11:30
Единственный путь, который может помочь, состоит в том, чтобы определить большее количество PID.. чем больший, тем позже выполнил процесс.. НО НЕ ВСЕГДА
/etc/init.d/
который я могу просто сказатьstop
,start
,restart
. Я недавно развернул новый, который снова использовал существующееjar
и но это уничтожает неправильный процесс. Предоставленная ссылка управления процессами показывает мне, что я, вероятно, делаю все это неправильно, но я должен вписаться в систему, или по крайней мере, легче, если я делаю, даже если это не идеально. Хм, люди и процессы... это - проблема XY. – Peter Wood 17.04.2013, 14:22java
использование-D
, и мы можем восстановить это с agrep
. Мне нравятся оба главные ответы, поскольку Вы оба помогли мне по-разному. Ваш был более образовательным, другой больше на задаче. Я люблю подвергать сомнению причину проблемы также и ценю Вас надевающий это на меня. – Peter Wood 17.04.2013, 16:02