別の入力を使用してループ内のプロセスをテストする必要があります。私の場合、相互作用がなければ成功しました。対話型状態に移行したら、テストを続け、対話型状態に移行したプロセスを終了する必要があります。
いくつかの方法を試しましたが、何の効果もありませんでした。これは部分的に機能しているように見えますが、数千のラウンドを完了した後、シャットダウン時にコンピュータが停止する傾向があります。
for filePath in filePaths:
counter += 1
command = "".join([components[0], '', components[1], filePath[:-1] + ' ', components[3]])
print "round: " + str(counter)
print "command", command
subProcess = subprocess.Popen("exec " + command, stdout=subprocess.PIPE, shell=True)
output = subProcess.stdout.readline()
if len(output):
print ["went interactive:",output]
subProcess.kill()
else:
print "non-interactive"
sys.exit()
誰かがこのコードスニペットを機能させるのに役立ちますか?