Hallo Zusammen,
ich habe zwei Arrays die zusammengefügt werden müssen. Mein Code ist aber extrem Langsam.
$AllDevices # ca 20.000 Stück
$AllADUsers # größer 100.000
$AllDevices Spalten:
manufactur,model,serialnumber,user
$AllADUser Spalten:
user,company,companycode,country
Nun soll bei allen Devices die Spalten aus dem AllADUser hinzugefügt werden, wenn der User übereinstimmt.
Dafür habe ich folgenden Code geschrieben. Der funktioniert auch, ist aber extrem langsam. Der würde mehrere Tage laufen.
Gibt es eine schnellere Variante?
$AllDevices | ForEach-Object { $username = $_.user $_ | Add-Member -MemberType NoteProperty -Name "company" -Value "$(($AllADUsers | Where-Object {$_.user -eq $username}).company)" $_ | Add-Member -MemberType NoteProperty -Name "companycode" -Value "$(($AllADUsers | Where-Object {$_.user -eq $username}).companycode)" $_ | Add-Member -MemberType NoteProperty -Name "country" -Value "$(($AllADUsers | Where-Object {$_.user -eq $username}).country)" }
Vielen Dank
Rene