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()
,为什么我看不到python shell?另一方面,如果我不是从python
开始,而是从子进程开始了另一个cmd
,我可以看到一个新的cmd
shell产卵。蟒蛇子进程(“cmd”)产生另一个交互式shell
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