asked on
$servers= Get-Content -Path 'C:\Localdata\ADcomputers.csv'
$output = 'C:\localdata\PRODadmin.csv'
$servers | ForEach-Object {
$server = $_
Write-Host "Processing $($server)"
$group = [ADSI]"WinNT://$($server)/Administrators"
$group.psbase.Invoke('Members') | ForEach-Object {
New-Object PSObject -Property ([ordered]@{
Server = $server
Admin = $_.GetType().InvokeMember('Name', 'GetProperty', $null, $_, $null)
})
}
} |
Where-Object {$_.Admin -notmatch '^(L RG.*|Locbeh|Domain Admins|Enterprise Admins|Administrator|G RB.*|SA_.*)$'} |
Export-csv $Output -NoTypeInformation