hello Я пытаюсь вернуть результат (который я знаю 1) из внешнего скрипта python, вызываемого из моего другого скрипта. когда echo $? из командной строки я получаю 1, но когда я пытаюсь вызвать echo $? из python, чтобы получить результат из скрипта python, я получаю 0 в скрипте. Вот мой код:
os.system(pythonPath+"serialWait.py "+dev+" "+brate+" login") //this
os.system(pythonPath+"serialCommand.py "+dev+" "+brate+" reset") //this works
value = subprocess.call('echo $?', shell=True)
>//here is where my issue lies I am trying to call the exit code from the previous python script but only get the true value from terminal
Почему вы используете Python, чтобы заставить оболочку запускать другой скрипт Python? Можете ли вы не импортировать другие модули и просто запускать их из одного сценария? –
У вас есть 3 отдельных снаряда. Не используйте 'os.system()' для чего-либо когда-либо и получайте возвращаемые значения из скриптов, используя механизмы, уже доступные в модуле подпроцесса ... – geoffspear
@ cricket_007 Я новичок в python, но я верю, что я потому что сценарий python - это очень конкретный 1 раз подряд, используемый в других сценариях (т. е. много автоматизированных задач в bash), если у вас есть какие-либо предложения, хотя я всегда готов узнать – TheHidden