Jak zjistit PID?

Jaroslav Aster xaster na fi.muni.cz
Pondělí Červen 23 22:11:17 CEST 2003


washek wrote:
> DD,
> 
> obvacim se na vas (urcite banalnim) dotazem. Pisu si skript, ktery
> bude zjistovat, zdali dany program bezi, a pokud ne, znova ho spusti.
> Problem je v tom, ze si ten program nevytvari zadny .pid soubor, ve
> kterem by bylo cislo jeho procesu. Poradite, jak tedy posle nazvu
> (podle vypisu z ps) zjistim cislo procesu?
> 
> Pripadne pokud na to jdu spatne, prozradte, jak to mate resene vy.
> 
> Diky za odpoved.

Pokud to budete resit v shellu (bash), tak pri spusteni procesu na 
pozadi se do promene $! ulozi pid procesu.

pr.

#!/bin/bash

program&
check_pid="$!"

while true; do
	if ! ps -A | grep -q $check_pid; then
		program&
		check_pid="$!"
	fi
	sleep 5s
done

--
orm



Další informace o konferenci Linux