Squarex 10 Geschrieben 17. August 2012 Melden Teilen 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 Link zu diesem Kommentar
Dukel 455 Geschrieben 17. August 2012 Melden Teilen Geschrieben 17. August 2012 Gibt einmal $user.otherTelephone und $a aus (Konsole oder Debugger). Zitieren Link zu diesem Kommentar
Squarex 10 Geschrieben 17. August 2012 Autor Melden Teilen 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 Link zu diesem Kommentar
Squarex 10 Geschrieben 21. August 2012 Autor Melden Teilen Geschrieben 21. August 2012 Ok ich habs nun rausgefunden. So hats funktioniert: if ($user.otherTelephone.Value -ne $a) Gruss Zitieren Link zu diesem Kommentar
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.