Jump to content

Liste mit Usern in der AD vergleichen und nicht Vorhandene User ausgeben


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben (bearbeitet)

Hallo Zusammen, Ich habe mir ein Script zusammen gebastelt das Eine CSV ausliest die Usernamen mit der AD Vergleicht und nicht existierende User in der AD wieder aus geben soll - Im Moment sieht es so aus:

Import-Module ActiveDirectory

$users = Get-ADUser -filter *

$userCSV = "U:\export3.csv"
Import-Csv $userCSV -delimiter ';' | Foreach-Object{
        $csvuser= $_
        if($users | Where-Object {$_.SamAccountName -eq $csvuser.SAMAccountName}) {
            New-Object psobject -Property @{
                SamAccountName = $csvuser.SAMAccountName
                Status = 'im AD vorhanden' 
            }|export-csv U:\export_final.csv -NoType -Delimiter ';' -Encoding UTF8
        } 
        else {
            New-Object psobject -Property @{
                Name = $csvuser.SAMAccountName
                Status = 'nichtmehr im AD, nur in der Liste' 
                
            }|export-csv U:\export_final.csv -NoType -Delimiter ';' -Encoding UTF8
           
        } 
}

Leider Bekomme ich es nicht hin das ich das Wirklich in einer Liste bekomme sondern das die User immer wieder in der Liste überschrieben wird.

 

Könnt ihr mir da weiterhelfen ich bin Azubi und sollte das Heute beendet haben komme nicht auf die Lösung korregiert vielleicht am besten den Code durch..

 

Sonst verzweifle ich hier noch

bearbeitet von Hainoon
Geschrieben (bearbeitet)

Des Weiteren könntest du "Export-CSV" z.B. durch "Add-Content" ersetzen, damit du nicht immer alles überschreibst  ;)

 

EDIT:

Nutze lieber "ForEach ( $Benutzer in $BenutzerListe )", anstatt "Foreach-Object$csvuser = $_". Damit hast du erstens mehr Übersicht und du sparst dir noch im zweiten Schritt die Zuweisung. Letztlich wird sogar das Object mit seinem ObjectTyp sauber im $Benutzer enthalten sein.

bearbeitet von MurdocX
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...