import subprocess
print ("this is test installer")
program = "C:\\ti\\ccsv6\\eclipse\\eclipsec.exe"
command1 = "-application org.eclipse.equinox.p2.director -uninstallIU org.eclipse.(...).feature.group -destination C:\ti\ccsv6\eclipse -profile epp.package.cpp -noSplash"
command_run = subprocess.call([program,command1])
这是我目前正在运行以卸载插件的代码,此特定行可在命令提示符下运行。但是如果我使用python,它会打开eclipse而不会执行,并给我错误 dvtLogOptions.xml不存在
答案 0 :(得分:0)
至少有两个问题:
command1
未加保留'\t'
。 ' \吨'是Python中的一个选项卡 - 单个字符。如果你想要两个字符(反斜杠和t
)然后转义反斜杠:'\\t'
或使用原始字符串文字r'\t'
,例如:
program = r'C:\ti\ccsv6\eclipse\eclipsec.exe'
如果您传递一个列表,那么每个项目应该只有一个命令行参数:[command, 'arg1', 'arg 2', '...']
。在Windows上,您可以将命令作为字符串传递:
subprocess.check_call(r'C:\ti\ccsv6\eclipse\eclipsec.exe '
r'-application org.eclipse.equinox.p2.director -uninstallIU ...\t...')