如何通过PowerShell筛选并遍历Azure生产环境订阅
Azure PowerShell 筛选后缀为prod的订阅并遍历实现方法
核心筛选逻辑
要筛选出名称后缀为prod的订阅,通过Get-AzSubscription结合Where-Object即可实现,两种常用匹配方式如下:
- 通配符匹配:用
-like运算符匹配以prod结尾的订阅名称
$prodSubscriptions = Get-AzSubscription | Where-Object { $_.Name -like '*prod' }
- 正则精确匹配:用
-match结合正则表达式prod$,确保prod是名称的最后部分(避免误匹配名称中间包含prod的订阅)
$prodSubscriptions = Get-AzSubscription | Where-Object { $_.Name -match 'prod$' }
遍历筛选结果
拿到筛选后的订阅集合后,直接用foreach循环逐个处理,示例代码如下:
foreach ($sub in $prodSubscriptions) { # 可选:切换到当前订阅(若需操作该订阅内的资源) Select-AzSubscription -SubscriptionObject $sub # 执行自定义操作,示例:输出订阅基本信息 Write-Host "正在处理订阅: $($sub.Name),ID: $($sub.Id)" # 此处添加你的业务逻辑代码... }
补充说明
- 若订阅名称的标识字段不是
Name,可替换为SubscriptionName或其他对应属性(可通过Get-AzSubscription | Get-Member查看所有属性) - 若仅需筛选特定租户下的prod订阅,可在
Get-AzSubscription中添加-TenantId参数指定租户
内容的提问来源于stack exchange,提问作者Siddharth Singh
相关产品推荐
相关产品推荐

