Получить идентификатор процесса команды команды сразу после выполнения - PullRequest
0 голосов
/ 24 сентября 2019

Мне нужно выполнить пару команд в Linux через python и сохранить процесс команд в базе данных, чтобы я мог убить его, когда это необходимо.Для каждой команды я должен получить идентификатор процесса и поместить его в базу данных, когда это необходимо.

Я попытался command & echo$!, это вернет идентификатор процесса в вывод.Я должен проанализировать вывод и получить идентификатор процесса.Мне нужно знать, есть ли простой способ получить идентификатор процесса после выполнения команды?.

Вывод вышеуказанной команды будет

[1] 7543745

command output
-
-
-
-
-
-
-
-
-
-

Ответы [ 2 ]

1 голос
/ 24 сентября 2019

Используйте модуль подпроцесса из Python:

import subprocess
p = subprocess.Popen('grep')
print(p.pid)

0 голосов
/ 24 сентября 2019

Попробуйте код ниже, чтобы найти идентификатор процесса по имени:

import os

process_name = 'Jupyter'
os.system('pgrep -fl {}'.format(process_name))
...