2016-06-23 3 views
-1

에 작성하지 이 테스트 파일로 간단합니다 os.system은 내가 작성한 스크립트와 함께 하나의 인수를 주면서 프로그램 이름 vmd를 시작합니다.os.system을 내가 내가 VMD (내 일을위한 프로그램)를 사용하기 위해 만든 간단한 테스트 파일이 터미널

vmd -eofexit < VMD_script.tcl -args 3spi_cholesterol 

모든 것이 완벽하게 작동합니다 : 난 그냥 터미널에 가서 작성하는 경우는 내가이 테스트 스크립트를 실행할 때, 내가 할 아무것도 얻을 수 없다는 것입니다하지만 무엇을 발견. os.system에서 잘못된 일을하고 있습니까? 나는 지금 당분간이 줄을 사용했지만 리눅스에서는 완벽하게 작동하고 있었다. 맥 문제 일까?

덕분에

+0

참조 [이 질문] 충당 (http://stackoverflow.com/questions/18739239/python-how-to-get-stdout-after-running-os-system) –

+0

I 대신 subprocess.Popen을 사용하여 제안하십시오. [이 질문의 허용 된 대답] (http://stackoverflow.com/questions/4813238/difference-between-subprocess-popen-and-os-system)에 따르면 Popen은 os.system을보다 유연하게 대체합니다. – kirkpatt

답변

0
import subprocess 
ls_output = subprocess.check_output(['vmd', '-eofexit', '<', 'VMD_script.tcl', '-args', '3spi_cholesterol'])