powershell hash order
1 TopicOrdering data in hash of hashes
Hello, I have this piece of code : ... #Get GPOs with all settings disabled $GpoList | Where-Object {$_.gpostatus -eq "allsettingsdisabled"} | ForEach-Object{ $CandidateGPOs[$_.id] = @{ ID = $_.id DisplayName = $_.displayname CreationTime = $_.creationtime Modificationtime = $_.modificationtime Owner = $_.Owner Domain = $domain All_Settings_Disabled = $CandidateGPOs[$_.id].All_Settings_Disabled +"True" Not_linked = $CandidateGPOs[$_.id].Not_linked +"" Links_disabled = $CandidateGPOs[$_.id].Links_disabled +"" No_settings = $CandidateGPOs[$_.id].No_settings +"" } } ... #other similar loops checking other settings (not linked, links disabled, no settings). $candidateGPOs.GetEnumerator() | Sort-Object $_.keys | ForEach-Object{[PSCustomObject]$_.value } | Export-Csv "$ReportPath\_candidateGPOs_Listing.csv" -NoTypeInformation -Append -delimiter ";" The result is not in the same order in the CSV. The command give this order : $candidateGPOs.GetEnumerator() | Sort-Object $_.keys | ForEach-Object{[PSCustomObject]$_.value } => Modificationtime : 13.06.2019 11:24:02 ID : b17dfccad9c-a93c0-41a9-8d04-e119a549450f CreationTime : 24.03.2007 14:27:45 No_settings : True Domain : contoso.comt Not_linked : Owner : contoso\Domain Admins All_Settings_Disabled : Links_disabled : DisplayName : Default Domain Controllers Policy It was working before. I don't understand what I wrongly changed... Thank you OSolved1.1KViews0likes3Comments