az cli 命令在使用变量时返回“错误请求”,但否则有效

问题描述 投票:0回答:1

我有这个 Az cli 命令,可以为我想与脚本一起使用的虚拟机启用备份:

    #Get required VM ID
getID=$(az vm show\
  --resource-group $resourceGroup \
  --name $vmName \
  --query id | tr -d '"')
  
# Enable backup for VM with the created policy
az backup protection enable-for-vm \
  --resource-group $resourceGroup \
  --vault-name $vaultName \
  --vm $getID \
  --policy-name $policyName

这是我遵循的官方 Azure 文档:

az backup protection enable-for-vm --resource-group myResourceGroup --vault-name myRecoveryServicesVault --vm $(az vm show -g VMResourceGroup -n MyVm --query id | tr -d '"') --policy-name DefaultPolicy

当我使用变量值作为选项运行命令时,它工作正常,但是当我使用变量时,它会返回错误:

Operation returned an invalid status 'Bad Request'

问题出在

--vm
选项上

azure azure-cli
1个回答
0
投票

az cli 命令在使用变量时返回“错误请求”。 操作返回无效状态“错误请求

错误 “操作返回无效状态‘错误请求’” 表示发送到

Azure Backup
的请求存在问题。

我使用

--output tsv
选项来检索
VM ID
作为制表符分隔值,然后可以将其存储在
getID
变量中。

 policyName="DefaultPolicy"
 resourceGroup="Venkat"
 vaultName="vault-lpuxsg4n"
 vmName="linux-vmdemo"
 getID=$(az vm show --resource-group $resourceGroup --name $vmName --query id --output tsv)
 az backup protection enable-for-vm --resource-group $resourceGroup --vault-name $vaultName --vm $getID --policy-name $policyName

输出:

enter image description here

如果问题仍然存在,请考虑升级 Az CLI 版本,以防其当前在 较低版本

上运行

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.