如何在Azure资源组中筛选排除隐藏标签后无标签的资源
实现方案
Azure 资源的隐藏标签统一以hidden-作为键名前缀,你只需要在原有筛选逻辑基础上,增加“排除所有键名非hidden-开头的标签”的判断即可。
完整可用脚本
Get-AzResource | Where-Object { # 无任何标签直接命中 $null -eq $_.Tags -or $_.Tags.Count -eq 0 -or # 所有标签均为隐藏标签时命中 $_.Tags.Keys.Where({$_ -notlike 'hidden-*'}, 'First').Count -eq 0 } | Format-Table -AutoSize
逻辑说明
- 原有判断保留,覆盖完全没有任何标签的资源
- 新增判断使用
Where方法的First模式,只要找到1个非hidden-开头的标签就会停止遍历,性能开销极低 - 只有当资源的所有标签都是隐藏标签时,才会被纳入筛选结果
内容的提问来源于stack exchange,提问作者MO-Senpai
相关产品推荐
相关产品推荐

