2016-09-07 2 views
1

새 콘솔에서 python 하위 프로세스를 실행하고 싶습니다. 일단 시작되면 사용자가이 새로운 프로세스에서 묻는 질문에 대답 할 수 있기를 바랍니다. 새 프로세스에서 Subprocess.Popen stdin

나는 다음 코드를 시도 :

p = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=cwd, creationflags=subprocess.CREATE_NEW_CONSOLE) 
(o, e) = p.communicate() 

즉시 하위 프로세스가 표시되는 다음과 같은 오류 메시지가 stdin을에 입력 요청으로 :이 달성 할 수있는 좋은 방법

EOFError: EOF when reading a line

인가? 그것은 지금 잘 작동

subprocess.Popen(cmd, cwd=cwd, creationflags=subprocess.CREATE_NEW_CONSOLE)

: 내가 표준 출력/표준 오류 리디렉션에 정말 관심 없어으로

+0

답 하시겠습니까? 어떤 사람들에게는 유용 할 수 있습니다 :) – kjaquier

+0

예, 작동합니다. 나는 대답을 주석으로 옮겼다. – Bertrand

답변

1

, 난이 방법을 시도했다. 표준 입출력을 리다이렉트하고 새로운 콘솔을 생성하는 것은 호환되지 않는다고 생각합니다.

관련 문제