如何将cmd行转换为os.system行?

时间:2017-01-06 23:09:37

标签: python windows cmd os.system config-files

我曾经使用以下命令通过cmd行运行一个名为vina的程序:

"\Program Files (x86)\The Scripps Research Institute\Vina\vina.exe" --config conf.txt --log log.txt

因此,程序将运行配置文件并输出包含结果的日志文件。我正在使用os.system模块在python中运行该程序。但是,我不能像在cmd中那样分配配置文件或日志文件。我在python中尝试过类似的东西:

os.system('C:/Program Files (x86)/The Scripps Research Institute/Vina/vina.exe' --config conf.txt --log log.txt)

程序快速打开然后关闭,可能是因为它没有运行配置文件。我也尝试将配置放入一个字符串,如下所示(我在省略日志之前,直到我让配置工作):

os.system('C:/ Program Files(x86)/ Scripps Research Institute / Vina / vina.exe',' - config conf.txt')

在这种情况下,我收到错误:

  

TypeError:system()最多需要1个参数(给定2个)

关于如何在python行中指定配置文件和日志文件输出的任何想法都像在cmd中一样?

2 个答案:

答案 0 :(得分:1)

复制命令行命令的正确语法是

os.system('"C:/Program Files (x86)/The Scripps Research Institute/Vina/vina.exe" --config conf.txt --log log.txt')

如果这不起作用,请尝试指定conf.txt和log.txt的完整路径

答案 1 :(得分:0)

os.system(r'“C:/ Program Files(x86)/ Scripps Research Institute / Vina / vina.exe” - config conf.txt --log log.txt')