所以我正在学习如何使用python中的cmd并尝试这样做:
import subprocess
proc = subprocess.Popen('cmd.exe', stdin = subprocess.PIPE, encoding =
'utf8', stdout = subprocess.PIPE)
stdout, stderr = proc.communicate('dir c:\\')
print(stdout)
这显然不起作用,因为这是我所接受的:
Microsoft Windows [版本10.0.14393] (c)2016 Microsoft Corporation。保留所有权利。
C:\用户\用户\应用程序数据\本地\程序\的Python \ Python36-32>更?
为什么只有一行而不是命令?
答案 0 :(得分:0)
this related question的答案表明了在Windows上与shell通信的更好方法:
import subprocess
result = subprocess.check_output('cmd /k dir c:\\', shell = True)