如何使用 AZ CLI 查找缺少特定标签的 Azure 资源?

如何使用 AZ CLI 查找缺少特定标签的 Azure 资源?

我需要确保我们所有的资源组都有一个特定的标签。

我知道我可以使用策略来确保任何创建的资源都具有标签,但对于现有资源,我正尝试使用 AZ CLI 提出查询。

作为额外的挑战,标签名称中间有一个空格:它是“Cost Center”而不是“CostCenter”。:-/

答案1

我建议使用Azure 资源图为此。资源图允许您在 CLI 或门户中使用 Kusto 语言查询所有 Azure 资源。

要查找所有没有“成本中心”标签的资源组的名称,您可以运行如下查询:

ResourceContainers 
| project name, type, tags 
| where type == 'microsoft.resources/subscriptions/resourcegroups' 
| where tags !contains 'Cost Center' 
| project name

从 CLI 来看,这个查询如下所示:

az graph query -q "ResourceContainers | project name, type, tags | where type == 'microsoft.resources/subscriptions/resourcegroups' | where tags !contains 'Cost Center' | project name"

相关内容