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