0

我设法只用一个参数运行我的脚本,它可以工作:

from subprocess import call

call(["az", "vm", "run-command", "invoke", "--command-id", "RunPowerShellScript", "-n", "NONPROD-AA-1", "-g", "NONPROD_APP_RG", "--scripts", "@test.ps1", "--parameters", "pattern=test"])

但是当我尝试发送两个参数时它失败了:我尝试了很多这样的方法:

call(["az", "vm", "run-command", "invoke", "--command-id", "RunPowerShellScript", "-n", "NONPROD-AA-0", "-g", "NONPROD_APP_RG", "--scripts", "@test.ps1", "--parameters", "pattern=test pattern2=test2"])
call(["az", "vm", "run-command", "invoke", "--command-id", "RunPowerShellScript", "-n", "NONPROD-BIZ-0", "-g", "NONPROD_APP_RG", "--scripts", "@test.ps1", "--parameters", "pattern=test,pattern2=test2"])
call(["az", "vm", "run-command", "invoke", "--command-id", "RunPowerShellScript", "-n", "NONPROD-BIZ-0", "-g", "NONPROD_APP_RG", "--scripts", "@test.ps1", "--parameters", "@(pattern=test,pattern2=test2"])

他们都失败了。

任何想法???

谢谢 !!!

更新:

我设法发送了多个这样的参数:

call(["az", "vm", "run-command", "invoke", "--command-id", "RunPowerShellScript", "-n", "NONPROD-AA-0", "-g", "NONPROD_APP_RG", "--scripts", "@test.ps1", "--parameters", "pattern=test" "test2"])

"...--parameters", "pattern=test" "test2"])

我只需要指定第一个参数名称及其值,然后指定其余参数值而不指定它的名称。这很奇怪,但它有效。

4

0 回答 0