繁体   English   中英

如何在Python中使用参数执行cmd.exe

[英]How to execute cmd.exe with arguments in Python

我试图使用参数ls运行cmd.exe

我用下面的代码

import subprocess
subprocess.call(['C:\Windows\System32\cmd.exe', 'ls'])

执行此cmd.exe ,打开但不使用ls作为输入

您的脚本有两个错误

  1. Windows不支持的ls使用dir代替
  2. /C运行命令所需的参数

修改后的脚本是

>>> import subprocess
>>> subprocess.call(['C:\\windows\\system32\\cmd.exe', '/C', 'dir'])

注意:使用\\转义反斜杠字符

我认为,它不适用于Windows,如果要在Windows中使用linux语法,则必须使用cygwin环境。 或将命令“ ls”更改为“ dir”(“ dir / w”)

如果您添加参数shell = True,则python将使用可用的默认shell。 在这种情况下,python将使用Windows cmd。 换句话说,下面的代码应该可以工作:

>>> subprocess.call('dir', shell=True)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM