将powercli命令与Python脚本集成

时间:2016-01-27 14:28:03

标签: python-2.7 vmware vmware-tools

当我们在power cli上运行命令时,它会显示我们执行的操作 例如

Start-VM –VM “VM1”  

只需在v中心启动VM。

我想用Python编写这样的代码,我们可以在代码中调用这些命令并将输出存储并显示给用户。
有没有办法将我们的Python代码与power cli命令链接起来,或者我们可以说我们可以在Python中绑定power cli代码吗?

1 个答案:

答案 0 :(得分:0)

你想要两件事:dot source the script(据我所知)(类似于python的导入)和subprocess.call

import subprocess
subprocess.call(["C:\\WINDOWS\\system32\\WindowsPowerShell\\v1.0\\powershell.exe", ". \"./SamplePowershell\";", "&hello"])

所以这里发生的是我们启动PowerShell,告诉它导入你的脚本,并使用分号来结束该语句。然后我们可以执行更多命令,即hello。

您还想为这些功能添加参数,所以让我们使用上面文章中的参数(略有修改):

Function addOne($intIN)
{
Write-Host ($intIN + 1)
}

然后使用您想要的任何参数调用该函数,只要powershell可以处理该输入。所以我们将上面的python修改为:

import subprocess
subprocess.call(["C:\\WINDOWS\\system32\\WindowsPowerShell\\v1.0\\powershell.exe", ". \"./SamplePowershell\";", "&addOne(10)"])

这给了我输出:

PowerShell sample says hello.
11

您需要编辑上面的内容以包含PowerCLI库,但它应该可以使用。