【问题标题】:subprocess.Popen + Win command (dxdiag)subprocess.Popen + Win 命令 (dxdiag)
【发布时间】:2016-07-21 23:11:06
【问题描述】:

我现在正在研究 subprocess,在阅读了文档后,我尝试启动 dxdiag 但不知何故它不起作用,我不知道为什么,因为我没有任何错误消息。

import os
import subprocess


subprocess.Popen("dxdiag -t C:\Users\BLABLA\Desktop\testDiag.txt")

虽然很简单,但没有生成文本文件。 任何提示将不胜感激,谢谢!

【问题讨论】:

    标签: python subprocess popen


    【解决方案1】:

    您应该将程序和参数作为列表传递,如下所示:

    import os
    import subprocess
    
    
    subprocess.Popen(["dxdiag",  "-t",  "C:\Users\BLABLA\Desktop\testDiag.txt"])
    

    【讨论】:

    • 谢谢!似乎可以工作,但是它并没有按原样使用文件夹。我想我会把它放入一个变量中。 subprocess.Popen(["dxdiag", "-t", "testDiag.txt"]) 工作正常
    【解决方案2】:

    好吧,显然,我什至不需要子流程,因为:

    os.popen(r'dxdiag /t dxdiag.txt')
    

    应该可以。但是仍然有人可以告诉我为什么 subprocess 命令不起作用吗?谢谢!

    【讨论】:

      猜你喜欢
      • 2011-10-25
      • 2013-08-11
      • 2019-08-02
      • 1970-01-01
      • 2016-11-06
      • 1970-01-01
      • 2021-08-19
      • 2012-02-28
      • 1970-01-01
      相关资源
      最近更新 更多