使用Python执行Windows命令后,如何自动关闭cmd窗口?
解决Windows命令窗口执行后自动关闭的问题
你当前用的cmd /k参数是专门让命令窗口执行完命令后保持打开的,这就是每次要手动输exit才能关闭的原因。解决方法很简单,把参数换成/c就行:
import os os.system('cmd /c "my text"')
注意如果你的命令里包含空格或者特殊字符,一定要用双引号把整个命令内容括起来,避免系统解析出错。
另外更推荐用Python的subprocess模块来执行外部命令,它比os.system更灵活、功能更全,也是Python3官方推荐的方式:
import subprocess # 无shell模式(更安全) subprocess.run(['cmd', '/c', 'my text']) # 如果命令需要shell解析(比如包含管道、通配符),可以加shell=True,但要注意命令注入风险 subprocess.run('cmd /c "my text"', shell=True)
你之前尝试给os.system传第二个参数没用,是因为这个函数只接受一个字符串参数,多余的参数会被直接忽略,所有参数都要写在同一个cmd命令字符串里。
内容的提问来源于stack exchange,提问作者Philipp Decker
相关产品推荐
相关产品推荐

