Sometime ago now I posted this which checks all your GPO's and renames any that are un-linked with the prefix ZZZ_, very handy.
It has one major flaw that needs addressing. I am using the GPO name when I should be using the GUID.
It doesn't sound like this would be much of a problem but I recently did some work somewhere where they had multiple GPO's with the same name and this script failed me.
So here it is with the GUID and as a bonus, rather than renaming orphans creates a report so you can submit the results to your CAB before making any rash changes to anything .
$Orphans = Get-GPO -All | Sort-Object guid | Where-Object { If ( $_ | Get-GPOReport -ReportType XML | Select-String -NotMatch "<LinksTo>" ) {$_.DisplayName } }
Foreach ($Orphan in $Orphans)
{
$Newname = $null
$Oldname = $Orphan.DisplayName
$Newname = "ZZZ_" + $Oldname
echo $Newname
Rename-GPO -Guid $Orphan.id -TargetName $Newname
}
As a double bonus I have also corrected the spelling of orphans in the code.
How much do I spoil you.