【问题标题】:OS.SYSTEM Hide pop up cmd [duplicate]OS.SYSTEM隐藏弹出cmd [重复]
【发布时间】:2016-11-09 16:07:25
【问题描述】:

如果我运行 Hello.pyw

import os
os.system('start hello.exe')

我得到一个非常弹出的 cmd。 如何在没有 cmd 弹出窗口的情况下运行此脚本。

【问题讨论】:

    标签: windows python-3.x


    【解决方案1】:

    从你的命令中丢失start

    根据start MSDN page or start /?

    启动一个单独的窗口来运行指定的程序或命令。

    os.system('hello.exe')
    

    或者如果您需要运行 bat/cmd 文件而不是 hello.exe,请使用 cmd /ccmd /? 用于完整的 cmd 选项):

    os.system('cmd /c "hello.bat"')
    

    【讨论】:

    • cmd /cos.system 一起使用是没有意义的。运行cmd.exe /c cmd /c "hello.bat"。此外,从 pythonw.exe(即 .pyw 脚本)运行时,此答案中的两个命令仍会创建一个临时控制台窗口。 os.system 使用 cmd shell,它是一个控制台程序,所以 Windows 会自动创建一个控制台。如果目标(例如 hello.exe)也是一个控制台程序,则使用 start 实际上会创建两个控制台窗口。相反,使用 subprocess 隐藏控制台或阻止它被创建,就像我 show here.
    猜你喜欢
    • 2013-01-12
    • 2020-12-01
    • 1970-01-01
    • 2018-12-21
    • 1970-01-01
    • 2023-03-20
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    相关资源
    最近更新 更多