есть rc.d скрипт который запускает процесс. Для корректного завершения ("script_name stop") необходим pid-файл, сам процесс его делать не умеет. как мне узнать PID процесса который был запущен?
в той части скрипта где 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
а еще смотрите переменную $$
создавайте пид-файл прямо из скрипта в этом случае
>как мне узнать PID
>процесса который был запущен?Это азбука, между прочим. Стыдно не знать.
run_process --arg1 asdasd --arg2 asasdas &
echo "PID is $!"