0
import os, subprocess
p = subprocess.Popen("cmd.exe", stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
print>>p.stdin, "echo hi"
p.stdout.readline()
p.stdout.readline()
p.stdout.readline()
p.stdout.readline()
p.stdout.readline()
p.stdout.readline()
print>>p.stdin, "python"
p.stdout.readline()
이제 p.stdout.readline()
을 수행하면 왜 파이썬 셸이 표시되지 않습니까?다른 대화 형 쉘을 생성하는 파이썬 하위 프로세스 ("cmd")
반면에 python
대신 서브 프로세스에서 다른 cmd
을 시작한 경우 새로운 cmd
셸 스폰을 볼 수 있습니다.
import os, subprocess
p = subprocess.Popen("cmd.exe", stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
print>>p.stdin, "echo hi"
p.stdout.readline()
p.stdout.readline()
p.stdout.readline()
p.stdout.readline()
p.stdout.readline()
p.stdout.readline()
print>>p.stdin, "cmd"
p.stdout.readline()
p.stdout.readline()
p.stdout.readline()
무엇이 다른가요?
나를 돕지 않습니다. 첫 번째 경우에 두 번째 행동을 원합니다. – prongs
'python -i'를 사용하면 도움이됩니다 –
아니요. 'python -i'를 사용한 후에도 여전히 똑같은 동작이 – prongs