如何将布尔值传递给 Azure Cli 中的开关参数(如在 powershell 中)?

How to pass a boolean to a switch parameter in Azure Cli (as in powershell)?

使用 switch 参数调用 commandlet 时,有时传递一个布尔值很有帮助,这样您就可以使用 -SwitchName:$var 语法参数化是否正在调用 switch。

例如,在powershell中我可以:

Get-AzureRmKeyVault -VaultName $vaultName -ResourceGroupName $kvRg -Verbose:$true
or 
Get-AzureRmKeyVault -VaultName $vaultName -ResourceGroupName $kvRg -Verbose:$var

...而不是使用开关的典型语法:

Get-AzureRmKeyVault -VaultName $vaultName -ResourceGroupName $kvRg -Verbose

传递变量允许您在可能想要有条件地调用开关时不复制整个 commandlet/function 调用(在此示例中,仅在设置全局调试变量时使用 -Verbose 开关)。

在 Azure CLI 中,以下两项均失败(在 powershell 脚本中)- 是否有替代语法?:

az keyvault show -n $vaultName -g $kvRg --verbose:true
az keyvault show -n $vaultName -g $kvRg --verbose:$true

请注意,我说的是开关参数,而不是普通的布尔参数:)

据我所知,Azure CLI 并非设计为以这种方式工作 (info)。

但请随时ask/propose在这里提出您的想法:https://github.com/Azure/azure-cli/issues以便我们的团队可以查看。