Jeder gut mit Hash-Tabellen Ale helfen auf dieser. Ich habe mehrere globale Gruppen, in denen ich jedes Mitglied der Gruppen versammle. Ich versuche, sie zu einer Hash-Tabelle hinzuzufügen, jede Zeile enthält alle Informationen über das Benutzerkonto zurückgegeben wird, wo die $ Gruppe der Schlüssel ist.PowerShell Problem beim Hinzufügen von Benutzerinformationen von AD in Array
Wenn ich $ vdiArr.add benutze bekomme ich den Fehler Kann keine Überladung für "add" und das Argument count: "9" finden. Wenn ich den Befehl Hashed entfernen, funktioniert es gut, aber die Daten im Array scheinen überall zu sein. Ich versuche, die Informationen jedes Benutzers auf einer Zeile innerhalb des Arrays zu erreichen. vdiArr zB [0] = {theirGroup, Namens-, Given, Lastname und so weiter ....
clear-host
$count = $null
$date = Get-Date -format "MM-dd-yyyy_hh-mm-ss"
$vdiGrps = Get-Content "D:\SourceFiles$\Scripts\Active Directory\ADGroups.txt"
$vdiArr=[System.Collections.ArrayList]@{}
[email protected]{}
foreach($group in $vdiGrps)
{
$ADgroup=(get-adgroup $group -properties members).members | get-adobject | where {$_.objectclass -eq "User"}| get-aduser -properties * | select name, GivenName, Surname, UserPrincipalName, SamAccountName, Enabled, DistinguishedName
$ADgroup
$vdiArr.add($group,$ADgroup.name,$ADgroup.GivenName,$ADgroup.Surname,$ADgroup.UserPrincipalName,$ADgroup.SamAccountName,$ADgroup.SamAccountName,$ADgroup.Enabled,$ADgroup.DistinguishedName)
#$vdiArr.group = $group
#$vdiArr.Name = $ADgroup.name
#$vdiArr.GivenName = $ADgroup.GivenName
#$vdiArr.Surname = $ADgroup.Surname
#$vdiArr.UserPrincipalName = $ADgroup.UserPrincipalName
#$vdiArr.SamAccountName = $ADgroup.SamAccountName
#$vdiArr.Enabled = $ADgroup.Enabled
#$vdiArr.DistinguishedName = $ADgroup.DistinguishedName
}
$arrOutput += New-Object -TypeName psobject -Property $vdiArr
Out-File -InputObject $arrOutput -FilePath "$home\Desktop\test.csv"