首页 > 解决方案 > 使用 PowerShell,如何获取其中包含 Azure 数据工厂资源的所有 Azure 订阅的列表?

问题描述

我想检索其中包含 Azure 数据工厂资源的订阅列表。我想使用 PowerShell 并获取订阅列表和 ADF 列表。

我试过Get-AzSubscription了,但它不包含资源类型的过滤器,即Microsoft.DataFactory/factories。此过滤器只能添加到Get-AzResource.

  1. 获取 AzSubscription 模块
  2. 获取 AzResource 模块

标签: azureazure-powershell

解决方案


好的,这给你:

$resType     = "Microsoft.DataFactory/factories"
$resTypeName = "DataFactory"
Get-AzSubscription | ForEach-Object {
    $subscriptionName = $_.Name
    $tenantId = $_.TenantId
    Set-AzContext -SubscriptionId $_.SubscriptionId -TenantId $_.TenantId
    (Get-AzResource -ResourceType $ResType) | ForEach-Object {     
        [PSCustomObject] @{
            true_sub = $subscriptionName
        } 
    } | get-unique 
} | Select-String 'true_sub' | ForEach-Object{ "Found_" + "$resTypeName" + "_In_Subscription= $($subscriptionName)"}

编辑:添加变量以使其可轻松用于任何资源类型。

我使用此处此处可用的代码来根据要求创建自定义代码。在我的环境中测试 - 它似乎按预期工作。

我应该透露我不是高级 PowerShell 用户,所以我提供的代码可能真的不是最理想的。


推荐阅读