#python #unix #процесс
Вопрос тут появляется в похожем виде не впервые. Столкнулся со следующей проблемой:
нужно проверять не только существование процесса, но и то, что он не является зомби.
try:
os.kill(pid, 0)
return True
except OSError:
return False
Вариант выше знаю, он не прокатывает с последним условием. Ставить внешние программы/модули
нельзя, все это происходит на разных машинах под линуксом и BSD, рутового доступа на
которые нету. Есть какие-нибудь варианты, как решить проблему?
Ответы
Ответ 1
Можно чисто средствами баша ps aux | awk ' { print $2" "$8 } ' | grep -q "$pid Z" где $pid это pid вашего процесса. В случае если процесс зомби, то результат этой команды будет равен нулю, т.е. полное совпадение.
Комментариев нет:
Отправить комментарий