【问题标题】:Popen gives "File not found" Error (windows/python)Popen 给出“找不到文件”错误(windows/python)
【发布时间】:2011-03-29 05:20:04
【问题描述】:

我正在尝试通过 subprocess.Popen 运行控制台命令,但每当我运行它时,我都会收到 Windows“找不到文件”错误,即使在运行 echo 命令时也是如此。 我还在使用线程模块制作的线程中使用 Popen。是这个问题吗?

【问题讨论】:

    标签: python windows popen


    【解决方案1】:


    D:/Program Files/Steam/steamapps/terabytest/sourcesdk/bin/orangebox/bin/vbsp.exe代替
    D:\Program Files\Steam\steamapps\terabytest\sourcesdk\bin\orangebox\bin\vbsp.exe

    这消除了引号内反斜杠的任何复杂性。

    【讨论】:

    • 问题的另一个主要来源是路径中的空白。使用参数列表而不是字符串更加健壮。尝试做类似 Popen(["D:/Program Files/Steam/steamapps/terabytest/sourcesdk/bin/orangebox/bin/vbsp.exe", "param1", "param2"])
    【解决方案2】:

    echo 不是可执行文件,它是cmd.exe 内部的一个内部命令。如果要使用 Popen 和内部命令,请添加关键字参数shell=True

    【讨论】:

    • 我输入了 '"D:\Program Files\Steam\steamapps\terabytest\sourcesdk\bin\orangebox\bin\vbsp.exe"' 仍然出现错误,它无法使用shell=True 或 shell=False 为什么?
    • 尝试转义反斜杠(使用另一个反斜杠)
    猜你喜欢
    • 2016-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多