如何修复“集合已修改;枚举操作可能无法在PowerShell中执行”

时间:2019-07-23 15:12:02

标签: powershell

我正在尝试将具有多个值的变量插入另一个变量以将值添加到表中。但是枚举操作不会执行

我尝试过制作数组,数组列表,但是没有任何效果

[guid]$subscriptionId = "blank for example" 
[guid]$tenantId = "blank for example" 


Select-AzureRmSubscription -SubscriptionId $subscriptionId

$resgrp = Get-AzureRmResourceGroup | select ResourceGroupName,Location
foreach ($res in $resgrp)
{
    $timestmp = Get-AzureRmResourceGroupDeployment -ResourceGroupName $res.ResourceGroupName | select Timestamp
    $resgrp.Add($timestmp)
}

我希望看到带有以下内容的格式化表格:

ResourceName   Location  Timestamp
------------   --------  ---------
etc.           etc.      etc.

1 个答案:

答案 0 :(得分:0)

您不能修改当前正在迭代的列表。

相反,您要做的是创建一个包含原始输入对象和添加的时间戳的新列表:

$resgrpWithTimestamp = $resgrp |Select ResourceGroupName,Location,@{Name='Timestamp';Expression={Get-AzureRmResourceGroupDeployment -ResourceGroupName $_.ResourceGroupName |Select -Expand Timestamp}}