Я запускаю подпроцесс с помощью следующей команды:
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, shell=True)
Тем не менее, когда я пытаюсь убить с помощью:
p.terminate()
или
p.kill()
Команда продолжает работать в фоновом режиме, поэтому мне было интересно, как я могу на самом деле завершить процесс.
Обратите внимание, что когда я запускаю команду с:
p = subprocess.Popen(cmd.split(), stdout=subprocess.PIPE)
Он завершается успешно при выдаче p.terminate()
.
shell=True
большого значения?
cmd
выглядишь? Он может содержать команду, запускающую несколько процессов. Так что не ясно, о каком процессе вы говорите.