Powershell, Objekte mit leeren Attribut filtern

jomaster

Lieutenant
Registriert
Dez. 2012
Beiträge
642
Hallo zusammen,

ich muss viele neue Verteiler wegen Umstrukturierung aufsetzen. Ich habe jetzt auf Basis von verschiedenen OUs per Powershell die Accounts in die passenden Verteiler einsortiert.
Jetzt befinden sich aber in den Verteilern verschiedene Systemaccounts wie Scanuser, Gruppenuser, etc die dort wieder raus sollen.
Diese User haben im Attribut EmailAddress keinen Wert drin stehen, da die Accounts das nicht brauchen.
Über folgenden Befehl bekomme ich bereits alle Nutzer aus der Gruppe samt Attribute in eine Variable gespeichert.
Get-ADGroupMember "Verteiler" -recursive | Get-AdUser -Properties * | Select samAccountname, EmailAddress | where-object {$_.EmailAdress -notlike "@"}

Und an diesem Where Part scheitere ich gerade. Ich möchte alle Nutzer mit leerer EMail Adresse filtern, Ich habs auch schon mit Filtern versucht, aber auhc kein brauchbares Ergebniss bekommen.

Mit dem Ergebnis von oben würde ich gerne über Remove-AdGroupMember -identity "Verteiler" -members $_.samAccountname alle gefundenen Mitarbeiter entfernen.

Wie mache ich das am besten? Habt ihr Vorschläge oder Ideen?
 
Du sagst er soll nur die nehmen bei denen kein @ drin steht. Der String @ beinhaltet keine Wildcards. Müsste das wert nicht leer und daher $null sein? Also ....where-object {$_.EmailAdress -eq $null}

Alternativ für den Vergleichsoperator Like/notlike auch mit den * arbeiten. Also @
 
Zurück
Oben