Проверка завершения процесса (python) - PullRequest
1 голос
/ 21 июня 2020

Как мне проверить, остановился ли процесс в python? Меня не волнует, является ли это процессом зомба ie, просто если он перестал работать (выход системного вызова). Это должно работать только на linux. Я проверил psutil, но STATE_STOPPED и STATE_DEAD, похоже, не работают

1 Ответ

2 голосов
/ 21 июня 2020

pidof - найти идентификатор процесса запущенной программы.

pidof будет иметь код выхода равным нулю, если хотя бы один процесс с таким именем запущен, иначе он будет one.

Вы можете сделать небольшой bash скрипт вроде этого:

if pidof python > /dev/null;
then
    echo 'At least one is running'
else
    echo 'No process is running'
fi

Я передаю вывод в / dev / null, чтобы избежать PID найденного печатается процесс, но это необязательно.

РЕДАКТИРОВАТЬ: Если вы хотите сделать это из python, просто сделайте то же самое:

import os

if os.system("pidof man > /dev/null") == 0:
    print('At least one is running')
else:
    print('No process is running')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...