从python中调用命令行,以批处理模式使用args执行程序



我需要在命令行中调用一个将以批处理模式执行的程序。此程序接收一个扩展名为.jlink的文件,该文件包含程序jlink.exe将执行然后关闭的一系列命令。

我尝试以以下方式执行:

os.system('C:/SEGGER/JLink_V490d/JLink.exe -CommanderScript D:FilesCommandFile.jlink')

但是这个命令在正常模式下执行程序,不接受参数。

我如何调用作为命令行的执行,然后发送该命令,以便程序使用这些参数以批处理模式执行?

使用subprocess:

subprocess.call(["C:SEGGERJLink_V490dJLink.exe", 
                 "-CommanderScript", "D:FilesCommandFile.jlink"])

您也可以使用shell=True直接在shell中执行命令(您试图使用os.system执行的操作),但不建议这样做,因为这会带来安全隐患。

更多信息请点击此处:https://docs.python.org/2/library/subprocess.html

最新更新