파이썬을 통해이 생성기를 호출해야합니다. 원래 나는 발전기에 예를 연결하여이 작업을 수행했지만 첫 번째 옵션에는 아니오라고 대답해야합니다.파이썬에서 yeoman generator를 호출 하시겠습니까?
yes | yo angular --no-insight
지금은 발전기에 파일의 출력을 보낸다 것은이 잘 작동
cat input.txt | yo angular --no-insight
n
y
y
input.txt을 입력하도록 지시하지만, 나는 또한 필요합니다 로그를 저장하여 출력을 out.txt로 리디렉션합니다.
cat input.txt | yo angular --no-insight > out.txt
이것은 일이 잘못되는 곳입니다. 첫 번째 프롬프트는 예상대로 아니오로 응답하고, 모든 것이 멈 춥니 다.
프로그래밍 방식으로 생성기를 실행하는 방법이 필요합니다. 어댑터를 사용하는 것이 해결책 일 것이라고 생각했지만 작성하는 데는 문서가 전혀없는 것 같습니다.
유스 케이스에 어떻게 맞추어야합니까?
편집 : 여기 내는 popen은 이미 명령
Popen("cat input.txt | yo angular --no-insight", shell=True).wait()
몇 분 동안 대기에 문제가되지 않도록 명령이 자신의 스레드에 실행되는 클래스를 실행하는 데 사용하는 전화입니다. 그러나 나는 아마 미래의 업데이 트에서 발전기의 타임 아웃을 처리하기 위해 그것을 제거하는 것이 잘못 될 것입니다.
with open('out.txt', 'w') as file_output:
file_output.write(subprocess.check_output('cat input.txt | yo angular --no-insight', shell=True))
또한 단지 '요 각도 --no-통찰력'에 Popen
개체를 만들고 표준 입력으로 작성하고 표준 출력에서 읽을 수 있습니다
명령 줄에서' out.txt'를 실행하면 어떻게됩니까? (작동합니까?) Python에서 명령을 어떻게 실행합니까? (코드 표시) –
jfs
같은 일이 발생하면 첫 번째 프롬프트에 no로 응답 한 다음 다른 입력이 전달되지 않습니다. 소식이 내 popen 통화를 포함하도록 업데이트되었습니다. –
stderr도 리디렉션하려고 했습니까? bash :'&> out.txt' – jfs