Squarex 10 Geschrieben 17. August 2012 Melden Geschrieben 17. August 2012 Hallo zusammen Ich habe ein Powershell Skript welches eine das otherTelephone Attribut mehrerer AD Benutzer ändern soll. Mit Get-ADObject lese ich eine bestimme Anzahl von Usern aus. Bevor ich nun die Änderung ins AD schreibe, überprüfe ich mit einem If Statement ob der entsprechende Wert denn ich reinschreiben will nicht bereits geschrieben ist (um die Replikationsmenge etwas tifer zu halten): if ($user.otherTelephone -ne $a) $a ist die Variable die ich schreiben will. Wenn jetzt $user.otherTelephone keinen Wert hat, wird die If-Schleife übersprungen/nicht durchgeführt. Obwohl in $a ein Wert steht und diese somit ungleich sind. Ich hab noch probiert den Code etwas zu erweitern: if (($user.otherTelephone -ne $a) -or ($user.otherTelephone -eq $NULL)) Hat leider aber auch nicht geklappt. Kann mir da jemand helfen? Gruss Zitieren
Dukel 460 Geschrieben 17. August 2012 Melden Geschrieben 17. August 2012 Gibt einmal $user.otherTelephone und $a aus (Konsole oder Debugger). Zitieren
Squarex 10 Geschrieben 17. August 2012 Autor Melden Geschrieben 17. August 2012 $user.othertelephone gibt nichts zurück. Folgendes gibt $user.othertelephone.GetType() zurück: IsPublic IsSerial Name BaseType -------- -------- ---- -------- True False ADPropertyValueCollection System.Collections.CollectionBase $a gibt die entsprechende Kurznummer zurück. $a.GetType() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True String System.Object Gruss Zitieren
Squarex 10 Geschrieben 21. August 2012 Autor Melden Geschrieben 21. August 2012 Ok ich habs nun rausgefunden. So hats funktioniert: if ($user.otherTelephone.Value -ne $a) Gruss Zitieren
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.