批量创建 Azure 管理组

Bulk creation of Azure management group

我正在尝试 运行 以下功率 shell-

New-AzManagementGroup -GroupName 'Contoso' -DisplayName 'Contoso Group' -ParentId /providers/Microsoft.Management/managementGroups/Infra'

自动执行任务,以便我可以将其部署到层次结构中的多个管理组。 我已经使用 csv 文件导入以下字段 GroupName DisplayNameParaentid 但看起来什么也没发生。 可能是我在做一些非常愚蠢的事情或缺少一些语法。 我设法在下面创建了一个简单的 powershell-

$DataSheet = Import-Csv -path “xx.csv”
foreach($data in $DataSheet)
{
$GroupName=$data.GroupName
$DisplayName=$data.DisplayName
$ParentId=$data.ParentId
New-AzManagementGroup -GroupName $GroupName -DisplayName $DisplayName  -ParentId $ParentId
}

但是我怎样才能在此脚本中添加一些错误捕获并删除放置相当长的完整资源 ID (-ParentId) 的要求 此脚本从 excel 导入数据,其中包含三个 headers GroupName、DisplayName 和 ParentId。

谢谢,

确保您能够读取 CSV 文件并且格式正确。通过下面的代码片段,我能够读取 CSV 文件并创建子管理组。为避免一次又一次地提供父 ID,您可以先获取父对象并在您的代码中使用它。

下面的代码片段应该有所帮助。

$parentObject = Get-AzManagementGroup -GroupName "ParentGroup"
$DataSheet = Import-Csv -path "xx.csv"
foreach($data in $DataSheet)
{
   $GroupName=$data.GroupName
   $DisplayName=$data.DisplayName
   New-AzManagementGroup -GroupName $GroupName -DisplayName $DisplayName   
   -ParentObject $parentObject
}

以下是CSV格式的数据。

希望以上信息对您有所帮助。