confusedbyte
Goto Top

Powershell, Automatisierungsvorgang dabei OU rausfiltern.

Hallo alle Zusamen,

ich habe gerade eine kleines Problem, ich will eine Automation "basteln", diese soll bewirken das für bestimmte OU's, genaugenommen 2, der Haken für "Passwort läuft nie ab" gesetzt wird.
Dies ist auch kein Problem:

Get-ADUser -SearchBase "OU= u3a,OU=u2,OU=Konzern,DC=Dom,DC=it,DC=de" -Filter "*" | where {$_.enabled -eq "true"} | Set-ADUser -PasswordNeverExpires:$true #-WhatIf  
Get-ADUser -SearchBase "OU= u3b,OU=u2,OU=Konzern,DC=Dom,DC=it,DC=de" -Filter "*" | where {$_.enabled -eq "true"} | Set-ADUser -PasswordNeverExpires:$true #-WhatIf  

Das funktioniert auch soweit.

Nun will ich aber die gesamte Domäne abfragen und mir alle anzeigen lassen die diesen Haken nicht gesetzt haben bzw. diese in eine CSV speichern.

$pfad = "c:\scripte\test.csv"  
$user = Get-ADUser -SearchBase "OU=Konzern,DC=Dom,DC=it,DC=de" -Filter {Enabled -eq $True -and PasswordNeverExpires -eq $True}  
$user | Export-Csv $pfad -notype #-encoding "unicode" 

jetzt will ich aber die o.g. OU's bei der Abfrage rausfiltern, und hier sehe ich anscheinend den Wald vor lauter Bäumen nicht.
Ich hatte da an sowas gedacht wie:

$user = Get-ADUser -SearchBase "OU=Konzern,DC=Dom,DC=it,DC=de" -Filter {Enabled -eq $True -and PasswordNeverExpires -eq $True -and DistinguishedName -ne "non-interactive"}  
aber das klappt alles nicht so richtig auch Operatoren wie "-notcontains" die werden nichtmal angenommen ^^

Content-Key: 349187

Url: https://administrator.de/contentid/349187

Printed on: April 16, 2024 at 06:04 o'clock

Mitglied: 133883
Solution 133883 Sep 15, 2017 at 10:18:38 (UTC)
Goto Top
$user = Get-ADUser -SearchBase "OU=Konzern,DC=Dom,DC=it,DC=de" -Filter {Enabled -eq $True -and PasswordNeverExpires -eq $True} | ?{$_.DistinguishedName -notmatch "OU=(u3a|u3b),OU=u2,OU=Konzern,DC=Dom,DC=it,DC=de" }  
Member: ConfusedByte
ConfusedByte Sep 15, 2017 at 10:40:22 (UTC)
Goto Top
funktioniert!

vielen Dank Oneplus.