Я пытаюсь убить подпроцесс через его pid, используя для этого subprocess.call(). Я получаю pid, назначая return такому значению:
return = subprocess.Popen(["sudo", "scrolling-text-example", "-y7"])
x= return.pid
Когда я готов завершить этот подпроцесс, я использую этот код:
subprocess.call(["sudo","kill",str(x)])
Это не убивает подпроцесс, но если я открою терминал (скажем, x равно 1234) и наберу: sudo kill 1234
, он убьет подпроцесс.
str(x)
строкой. - person new QOpenGLWidget   schedule 28.02.2020killCmd = "sudo kill %s" %x
, а затем наsubprocess.run(killCmd)
, чтобы проверить это, и я получаю то же сообщение. - person ProgrammerBret   schedule 28.02.2020x = str(return.pid)
- person new QOpenGLWidget   schedule 28.02.2020x = str(return.pid)
и запускsubprocess.call(["sudo","kill",x])
ничего не дает -- я думаю, что мне нужны привилегии root для этой папки, в которой я работаю -- сейчас я ищу, как это сделать.. - person ProgrammerBret   schedule 28.02.2020