按标记名称查找 Azure 资源组

Find Azure resource groups by tag name

最近我更新了 Azure Automation Account 中的 Azure Powershell 模块,似乎新版本的 AzureRm.Resources 模块处理资源和资源组标签的方式发生了变化。 以前这是我列出带有 AutoShutdownSchedule 标签名称

的资源组的方式
(Get-AzureRmResourceGroup | where {$_.Tags.Name -contains "AutoShutdownSchedule"}

现在根据https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-using-tags我必须使用:

Find-AzureRmResourceGroup -Tag @{Name="AutoShutDownSchedule"}

但这 return 没有任何意义。但是 Find-AzureRmResourceGroup 正在工作:

    Find-AzureRmResourceGroup


id         : /subscriptions/xxxxx/resourceGroups/HaaS-CDH-Starter-Spotfire-1393
name       : xxxxx
location   : eastus2
tags       : @{AutoShutdownSchedule=18:00}
properties : @{provisioningState=Succeeded}

id         : /subscriptions/xxxxxx/resourceGroups/mnt-dev-us
name       : xxxx
location   : eastus2
tags       : @{AutoShutdownSchedule=18:00}
properties : @{provisioningState=Succeeded}

对我做错了什么有什么建议吗?

您应该使用下面的命令获取名称为 AutoShutdownSchedule.

的标签的资源组
Find-AzureRmResourceGroup -Tag @{ AutoShutdownSchedule = $null }

Find-AzureRmResourceGroup cmdlet 的按标记名称查找资源组的示例可从以下位置获取:

get-help Find-AzureRmResourceGroup -full
--------------------------  FindByTagName  --------------------------

Find-AzureRmResourceGroup -Tag @{ testtag = $null }

Finds all resource group with a tag with name 'testtag'.

注意: 已验证使用 AzureRm.Resources 模块版本:3.5.0