在Python中执行cmd-like命令

时间:2012-08-30 16:07:42

标签: python cmd executable

我想创建一个Python代码来打开像cmd那样的程序,然后从文件菜单中导出.txt文件。对于cmd,代码如下所示:

c:\ESG\Statsvis.exe \\192.168.100.222\c\ESG\S1-424\2012\06\29\S1-42420120629.dsf /output=C:\Users\jessica.macleod\Desktop\outfile.txt /param=RMS Amplitude

在cmd中,上面的行完全符合我的要求。什么是Python的等价物?

4 个答案:

答案 0 :(得分:3)

请参阅subprocess.Popen,如下所示:

subprocess.Popen(["/bin/ls", "-l"]

或者,根据您希望获得的结果(stdout,返回代码),请使用此模块中的subprocess.callsubprocess.call_check或其他代码段。

答案 1 :(得分:1)

另一种方式是os.system()

import os
os.system("c:\\ESG\\Statsvis.exe \\192.16...0629.dsf /output=C:\\...\\outfile.txt ...")

答案 2 :(得分:0)

如果您想拥有确切的shell / cmd行为,请在shell调用中将True参数设置为suprocess.Popen()。但是,从文档:

  

警告

     

如果使用shell = True调用系统shell可能会造成安全隐患   结合不受信任的输入。请参阅“常用”下的警告   有关详细信息的参数。

答案 3 :(得分:0)

如果需要输出命令,请使用子进程:

import subprocess
out = subprocess.check_output("dir c:\ /AD", shell = True)