簡體   English   中英

Azure CLI 運行命令使用參數調用 RunPowerShellScript

[英]Azure CLI run-command invoke RunPowerShellScript with parameters

我一直在嘗試在 Azure VM 上運行一個需要像這樣傳遞參數的腳本;

az vm run-command invoke -g <resource group> -n <vm name> --command-id RunPowerShellScript --scripts "@....\Desktop\write-host.ps1" --parameters First Second

我已經通過以下方式成功地使用 AzureRM 模塊完成了這項工作;

Invoke-AzureRmVMRunCommand -ResourceGroupName <resource group> -VMName <vm name> -CommandId "RunPowerShellScript" -ScriptPath "....\Desktop\write-host.ps1" -Parameter @{ "first" = "First"; "second" = "Second; }

write-host.ps1 腳本很簡單,如下;

param(
    [string]
    $first,

    [string]
    $second
)

Write-Host "$first and $second"

我無法使用 Azure CLI 命令來查找參數。 我試過在這里閱讀文檔,我試過以各種不同的方式傳遞它,其中一些涉及;

--parameters [first=]First [second=]Second
--parameters "[first=]First [second=]Second"
--parameters "`"First`" `"Second`""
--parameters @{"First" = "first"; "second" = "Second"}

我可以讓它半工作的唯一時間是當我傳入如下變量時;

--parameters "`First`" `"Second`" `"Third`""
--parameters "First Second Third"

在這種情況下它只打印出“第二和第三”,它似乎忽略了“第一”

我想使用 AzureCLI 命令在 PowerShell 腳本中執行這些,但我無法在命令窗口和 PowerShell 中執行它。

有沒有人能告訴我如何使用 AzureCLI run-command 命令成功地將命名或其他方式的參數傳遞到 PowerShell 腳本中?

在這種情況下,使用第二個建議的符號工作:

--parameters first=xxx second=yyy

盡管根據文檔,兩種方式都應該沒問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM