Я пытаюсь написать скрипт Python, который запускает подпроцесс и записывает в подпроцесс stdin. Я также хотел бы иметь возможность определить действие, которое необходимо предпринять в случае сбоя подпроцесса.
Процесс, который я пытаюсь запустить, представляет собой программу под названием nuke
, которая имеет собственную встроенную версию Python, в которую я хотел бы иметь возможность отправлять команды, а затем сообщать ей о выходе после команд выполнить. До сих пор я понял, что если я запускаю Python из командной строки, как, а затем запускаю nuke
в качестве подпроцесса, тогда я могу набирать команды для nuke
, но я бы хотел поместить все это в сценарий, чтобы основная программа Python могла запускать nuke
, а затем записывать в стандартный ввод (и, следовательно, во встроенную версию Python) и указывать, что она должна делать шикарные вещи, поэтому я написал скрипт, который запускается nuke
, например:
subprocess.call(["C:/Program Files/Nuke6.3v5/Nuke6.3", "-t", "E:/NukeTest/test.nk"])
Тогда ничего не происходит, потому что nuke
ожидает ввода пользователя. Как бы мне теперь написать в стандартный ввод?
Я делаю это, потому что я запускаю плагин с nuke
, который вызывает его прерывистый сбой при рендеринге нескольких кадров. Поэтому я хотел бы, чтобы этот сценарий мог запускать nuke
, указывать, что он что-то делает, а затем, если он падает, попробуйте еще раз. Так что, если есть способ поймать аварию и все еще быть в порядке, это было бы здорово.