|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Eugene Grosbein 2:5006/1 20 Sep 2000 00:00:39 To : Andrey Chekalin Subject : Re: Как узнать запуцена прорамма или нет -------------------------------------------------------------------------------- >Hо меня больше устроит вот такая вещь >$killall -SIGUSR1 program > No processes matching ``program'' >#Бляха муха упала >$/usr/local/bin/program.sh > >Вот меня и интерисует вопрос как организовать > >if "Бляха муха упала" then /usr/local/bin/program.sh 1. Самый первый раз запускаем так: #!/bin/sh /usr/local/bin/program.sh echo $! >/var/run/program.sh.pid 2. Для (пере)запуска: #!/bin/sh PID=`cat /var/run/program.sh.pid` if kill -0 $PID >/dev/null 2>&1; then #еще работает, перестартуем kill -SIGUSR1 $PID >/dev/null 2>&1 if kill -0 $PID >/dev/null 2>&1; then #не упала, собака. убить упрямую тварь. kill -SIGKILL $PID >/dev/null 2>&1 #лишь в исключительных случаях не умрет, это не учитываем fi #теперь ее нет fi #здесь ее уже нет (или не было, или свалилась после USR1, или убили) /usr/local/bin/program.sh echo $! >/var/run/program.sh.pid Eugene --- slrn/0.9.6.2 (FreeBSD) * Origin: SVZ-Service (2:5006/1@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/34938656a89d7.html, оценка из 5, голосов 10
|