파이썬 3.5를 사용하여 대화식 명령 줄 응용 프로그램과 인터페이스하려고합니다. 아이디어는 파이썬 스크립트의 시작 부분에서 프로세스를 시작하고 열어 두는 것입니다. 루프에서, 나는 파일 경로를 출력하고, 그 다음에 라인 반환을하여 stdin
으로 보내고, 처리 할 때까지 0.25 초 정도 기다린 다음, 새 라인에 도달 할 때까지 stdout
에서 읽는다.파이썬 하위 프로세스 : stdin으로 인쇄하고, 개행까지 stdout을 읽고, 반복하십시오.
이것은 communicate
기능과 매우 비슷하지만 subprocess
기능과 비슷하지만 프로세스가 종료 될 때까지 기다리는 대신 줄 반환을 기다리고 있습니다. 누구든지이 작업을 수행하는 비교적 간단한 방법을 알고 있습니까?
편집 : 가능한 경우 pexpect
과 같은 타사 라이브러리가 아닌 표준 라이브러리를 사용하는 것이 좋습니다.
'pexpect' 모듈을 보았습니까? –
@JonClements 이전에 SSH 용으로 사용해 왔습니다. 그러나 나는 이것을 위해 그것을 조사 할 것이다. 고맙습니다! –
아직 ...'pexpect'를 사용하십시오. 표준 라이브러리의 사용을 권장 할 수없는 이유는 엄청난 복잡성 때문입니다. –