如何在Python中运行命令行
我正在尝试执行如何在Python中运行命令行,python,Python,我正在尝试执行 "C:/Program Files/AnsysEM/AnsysEM15.0/Win64/Designer.exe" -runscriptandexit "C:/Python27/simula_SIR_Phyton.py" 这是一个在程序中运行脚本的错误,而我不能这样做。我已成功运行一个文件,如: os.startfile("C:/Users/amrodri.UPVNET/Desktop/Scripts/SIR_europea_script.adsn") 但我没有成功解决另一个
"C:/Program Files/AnsysEM/AnsysEM15.0/Win64/Designer.exe" -runscriptandexit "C:/Python27/simula_SIR_Phyton.py"
这是一个在程序中运行脚本的错误,而我不能这样做。我已成功运行一个文件,如:
os.startfile("C:/Users/amrodri.UPVNET/Desktop/Scripts/SIR_europea_script.adsn")
但我没有成功解决另一个问题。有人能帮忙吗?
除其他外,我尝试过:
os.system("C:/Program Files/AnsysEM/AnsysEM15.0/Win64/Designer.exe" -runscriptandexit "C:/Python27/simula_SIR_Phyton.py")
os.system
将单个字符串作为参数。为了在Python字符串中包含双引号(而不终止字符串),需要使用反斜杠对其进行转义,如下所示:
os.system("\"C:/Program Files/AnsysEM/AnsysEM15.0/Win64/Designer.exe\" -runscriptandexit \"C:/Python27/simula_SIR_Phyton.py\"")
或者,也可以使用单引号:
os.system("'C:/Program Files/AnsysEM/AnsysEM15.0/Win64/Designer.exe' -runscriptandexit 'C:/Python27/simula_SIR_Phyton.py'")
请参阅:(这是特定于Unix的,但如果您使用的是PowerShell之类的工具,也应适用于Windows)罪魁祸首是
程序
和文件
之间的空间。在windows中,当您想要执行一个包含空格的地址时,您需要将其放在“”之间,这将与Python的引用混合在一起。一个简单的解决方案是在Python中使用原始“”。例如:
import os
ansysedt_exe = r'"C:\Program Files\AnsysEM\AnsysEM16.0\Win64\ansysedt.exe" -runscriptandexit C:\automation\test_1.py'
print ansysedt_exe
os.system(ansysedt_exe)
请注意,由于program files文件夹名称中有空格,设计器地址被放置在“c:\…\designer.exe”
之间,但我们不必对脚本地址执行相同的操作,因为那里没有空格。另外,在R16中,designer.exe
将与AnsysEDT.exe
合并