URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 85802
[ Назад ]

Исходное сообщение
"/bin/sh и запускаемый процесс"

Отправлено piroman17 , 30-Июн-09 13:29 
есть rc.d скрипт который запускает процесс. Для корректного завершения ("script_name stop") необходим pid-файл, сам процесс его делать не умеет. как мне узнать PID процесса который был запущен?

Содержание

Сообщения в этом обсуждении
"/bin/sh и запускаемый процесс"
Отправлено urusha , 30-Июн-09 13:50 
в той части скрипта где start делайте что-нибудь типа
ps ax|grep 'script_name' | grep -v grep | awk '{print($1)}' > /var/run/script_name.pid
а в stop вытаскивайте pid из /var/run/script_name.pid
только стоит еще подумать о ситуации, когда запущены 2 процесса одновременно... например for i in `cat /var/run/script_name.pid`
do; kill $i; done

"/bin/sh и запускаемый процесс"
Отправлено vg , 30-Июн-09 14:54 
а еще смотрите переменную $$
создавайте пид-файл прямо из скрипта в этом случае

"/bin/sh и запускаемый процесс"
Отправлено gaa , 30-Июн-09 15:02 
>как мне узнать PID
>процесса который был запущен?

Это азбука, между прочим. Стыдно не знать.

run_process --arg1 asdasd --arg2 asasdas &
echo "PID is $!"