0

特定の OU 内のマシンでローカル管理者を見つけるスクリプトを作成しています。このタスクを実行するために 2 つの関数を作成しました。各関数自体は正常に動作していますが、2 つを組み合わせると結果が得られません。ここで私が間違っていることを知っている人はいますか?

    Function GetCompList{
Get-ADObject -Filter { ObjectClass -eq "computer" } -SearchBase "OU=Resources,DC=Contoso,DC=LOCAL" `
| Select-Object Name
}

Function Admin_Groups{
foreach($i in GetCompList){
$adsi = [ADSI]"WinNT://$i"
$Object = $adsi.Children | ? {$_.SchemaClassName -eq 'user'} | % {
    New-Object -TypeName PSCustomObject -Property @{
        UserName = $_.Name -join ''
        Groups = ($_.Groups()  |Foreach-Object {$_.GetType().InvokeMember("Name", 'GetProperty', $null, $_, $null)}) -join ',' 
    }    
} 
$Object |? {$_.Groups -match "Administrators*"}

}
}

Admin_Groups
4

1 に答える 1