Я хочу выполнить набор операторов, который является комбинацией оболочки и python кода в сценарии python в дочернем процессе. Я использую метод subprocess.call (), но он принимает только одну команду оболочки в качестве ввода. Я хочу выполнить некоторый python код после команды оболочки в дочернем процессе и выйти из дочернего процесса после завершения выполнения кода оболочки + python.
command = "./darknet detector demo cfg/coco.data cfg/yolov3-tiny.cfg yolov3-tiny.weights {0}".format(latest_subdir)
proc = subprocess.Popen([command], stdout=subprocess.PIPE, shell=True)
(out, err) = proc.communicate()
with open(result_file, 'w') as fout:
fout.write(out)
os.system('mv {0} {1}'.format(latest_subdir,processed_dir))
s3_util.upload_results([result_file])