$AllVMs = Get-VM | Where-Object { $_.ExtensionData.summary.config.ManagedBy.Type -ne "placeholderVm" } #$DataProtectionVMs = (Get-TagAssignment -Category DataProtection).Entity | Where-Object { $_.ExtensionData.summary.config.ManagedBy.Type -ne "placeholderVm" } $result = [System.Collections.ArrayList]@() ForEach ($VM in $AllVMs) { $AppName = ($VM | Get-TagAssignment -Category AppName).Tag.Name; $CohesityGB = (($VM | Get-harddisk) | Measure-object -sum CapacityGB).sum; #$AppTotalGB = ($AllVMs | Get-TagAssignment -Category AppName | Where-object Name -eq $AppName); $OldTag = ($VM | Get-TagAssignment -Category DataProtection).Tag.Name $vCenter = $VM.Uid.split('@').split(':')[1] $obj = [PSCustomObject]@{ 'Name' = $VM.Name; 'AppName' = $AppName; 'CohesityGB' = $CohesityGB 'OldTag' = $OldTag; 'vCenter' = $vCenter; } #Write-Output $obj $null = $result.Add($obj) } $group = $result | group-object AppName | select Count,Name,@{n='CohesityGB';e={($_.Group | measure-object -sum CohesityGB).sum}}#,@{n='NotCohesityGB';e={}} #Get-Tag -Category AppName -Name DHS-SPACES