通过打开 cmd 提示符在 运行 命令时子进程模块不返回输出
Subprocess module not returning output when running command by opening cmd prompt
我正在使用 subprocess 模块打开命令提示符和运行其中的几个命令并检索结果。
我试过下面的代码,它没有返回任何输出。简单地 运行ning 很长时间 time.Please 帮助这段代码有什么问题。与此代码类似,我使用了记事本应用程序路径和文本文件路径,并使用文本文件打开了记事本应用程序。但是命令提示符没有打开。
import subprocess
process = subprocess.Popen(['C:\Windows\system32\cmd.exe', 'dir'], stdout=subprocess.PIPE)
stdout=process.communicate()
print(stdout)
问题是 cmd.exe dir
实际上并不是 运行 dir 命令。您需要根据 MSDN 指定 /c
标志。所以你真的想要
import subprocess
process = subprocess.Popen(['C:\Windows\system32\cmd.exe', '/c', 'dir'], stdout=subprocess.PIPE)
stdout=process.communicate()
print(stdout)
我正在使用 subprocess 模块打开命令提示符和运行其中的几个命令并检索结果。
我试过下面的代码,它没有返回任何输出。简单地 运行ning 很长时间 time.Please 帮助这段代码有什么问题。与此代码类似,我使用了记事本应用程序路径和文本文件路径,并使用文本文件打开了记事本应用程序。但是命令提示符没有打开。
import subprocess
process = subprocess.Popen(['C:\Windows\system32\cmd.exe', 'dir'], stdout=subprocess.PIPE)
stdout=process.communicate()
print(stdout)
问题是 cmd.exe dir
实际上并不是 运行 dir 命令。您需要根据 MSDN 指定 /c
标志。所以你真的想要
import subprocess
process = subprocess.Popen(['C:\Windows\system32\cmd.exe', '/c', 'dir'], stdout=subprocess.PIPE)
stdout=process.communicate()
print(stdout)