mcseboarduser23 0 Geschrieben 19. Januar 2015 Autor Melden Geschrieben 19. Januar 2015 Get-ADUser "User1" -Properties manager | ? {$._Manager -eq [string]::IsNullOrEmpty} The term '$._Manager' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. >Get-ADUser "User1" -Properties manager | Get-Member TypeName: Microsoft.ActiveDirectory.Management.ADUser Name MemberType Definition---- ---------- ----------Contains Method bool Contains(string propertyName)Equals Method bool Equals(System.Object obj)GetEnumerator Method System.Collections.IDictionaryEnumerator GetEnumerator()GetHashCode Method int GetHashCode()GetType Method type GetType()ToString Method string ToString()Item ParameterizedProperty Microsoft.ActiveDirectory.Management.ADPropertyValueCollection Item(string p...DistinguishedName Property System.String DistinguishedName {get;set;}Enabled Property System.Boolean Enabled {get;set;}GivenName Property System.String GivenName {get;set;}Manager Property System.String Manager {get;set;}Name Property System.String Name {get;}ObjectClass Property System.String ObjectClass {get;set;}ObjectGUID Property System.Nullable`1[[system.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, ...SamAccountName Property System.String SamAccountName {get;set;}SID Property System.Security.Principal.SecurityIdentifier SID {get;set;}Surname Property System.String Surname {get;set;}UserPrincipalName Property System.String UserPrincipalName {get;set;} Manager Property System.String Manager {get;set;} an der Stelle drehe ich mich im Kreis Zitieren
tesso 377 Geschrieben 19. Januar 2015 Melden Geschrieben 19. Januar 2015 Get-ADUser -Filter * | Where-Object {$_.Manager -eq $null } Zitieren
mcseboarduser23 0 Geschrieben 19. Januar 2015 Autor Melden Geschrieben 19. Januar 2015 danke dir: Get-ADUser -Filter * | Where-Object {$_.Manager -eq $null } output: manager: sowie: Manager: - wenn ich jedoch in der EMC nachsehe ist ein Manager gesetzt auch der output in der AD Shell mit emc module bringt den gleichen "falschen" output Zitieren
tesso 377 Geschrieben 19. Januar 2015 Melden Geschrieben 19. Januar 2015 Mein Befehl bringt die User ohne Managereintrag raus. Wenn du die Konten mit Manager haben willst musst du die Condition ändern. Get-ADUser -Filter * | Where-Object {$_.Manager -ne $null } Zitieren
daabm 1.386 Geschrieben 19. Januar 2015 Melden Geschrieben 19. Januar 2015 Nein! leer ist nicht gleich leer in einer Datenbank Weiß ich - wollte den TO nicht noch mehr durcheinanderbringen :D Zitieren
mcseboarduser23 0 Geschrieben 20. Januar 2015 Autor Melden Geschrieben 20. Januar 2015 @tesso, Get-ADUser -Filter * -properties -manager | Where-Object {$_.Manager -ne $null } ... klappt also, wenn ich eine Abfrage haben möchte, ob ein wert gesetzt ist benötige ich immer Varibale $Null ?? worin besteht dann der unterschied zw "", 0, $Null? danke für eine kurze erläuterung Zitieren
Sunny61 816 Geschrieben 20. Januar 2015 Melden Geschrieben 20. Januar 2015 worin besteht dann der unterschied zw "", 0, $Null? NULL bedeutet, das Feld hat keinerlei Inhalt, es ist NULL. 0 ist nicht NULL und nicht "", sondern 0. Und "" ist nicht NULL und auch nicht 0. Evtl. kommst Du hiermit weiter: http://de.wikipedia.org/wiki/Nullwert Get-ADUser -Filter * -properties -manager | Where-Object {$_.Manager -ne $null } ... klappt also, wenn ich eine Abfrage haben möchte, ob ein wert gesetzt ist benötige ich immer Varibale $Null ?? Das -ne deute ich für NotEqual, d.h. für mich NICHT NULL. Zeige nur die Datensätze an, die Inhalt in diesem Feld haben, und zwar nicht NULL. BTW: Deine ?-Taste prellt. Zitieren
blub 115 Geschrieben 20. Januar 2015 Melden Geschrieben 20. Januar 2015 $null: im Managerfeld gab es noch nie einen Wert "" : es gab mal einen Eintrag im Feld, aber der wurde wieder gelöscht 0 : der Manager ist eine 0 deswegen ist wahrscheinlich dieser Ausdruck richtig: Get-ADUser -Filter * -properties -manager | Where-Object { $([String]::IsNullOrEmpty($($_.manager))) } BTW: "-Filter * " kannst du dir auch sparen Zitieren
mcseboarduser23 0 Geschrieben 20. Januar 2015 Autor Melden Geschrieben 20. Januar 2015 soweit ich weiss, wird bei AD cmdlets zwingen ein Filter verlangt "ohne -filter *" fragt Powershell nach der Entertaste nach der identity..aber vielen dank, das bringt licht ins dunkel..gruss Zitieren
daabm 1.386 Geschrieben 20. Januar 2015 Melden Geschrieben 20. Januar 2015 "" : es gab mal einen Eintrag im Feld, aber der wurde wieder gelöscht Da würde ich eher sagen "er wurde als Leerstring gesetzt". Wenn man das richtig macht, steht wieder $Null drin (aka "<not set>"). Zitieren
mcseboarduser23 0 Geschrieben 21. Januar 2015 Autor Melden Geschrieben 21. Januar 2015 Hallo, -properties manager | ? { $([string]::IsNullOrEmpty($($_.manager)))} könntet Ihr mir bitte weitere Infos diesbezzüglich zukommen lassen, Links oder dergleichen. bin aktuell auf der Suche nach dem roten Faden Zitieren
daabm 1.386 Geschrieben 21. Januar 2015 Melden Geschrieben 21. Januar 2015 Google kennst Du aber, oder? Mußt Du wohl, sonst hättest Du nicht hierher gefunden :D https://www.google.de/search?q=+{+%24([string]::IsNullOrEmpty(%24(%24_.manager)))} Zitieren
blub 115 Geschrieben 22. Januar 2015 Melden Geschrieben 22. Januar 2015 Hallo, könntet Ihr mir bitte weitere Infos diesbezzüglich zukommen lassen, Links oder dergleichen. bin aktuell auf der Suche nach dem roten Fade Hallo "IsNullOrEmpty" ist eine sogenannte statische Methode der Klasse String. Erkennbar an dem roten "S" hier https://msdn.microsoft.com/de-de/library/system.string%28v=vs.110%29.aspx -> Methods Table -> Linke Spalte bzw. [string]$a | gm -static (benutz aber lieber die MSDN) Die Syntax für den Aufruf statischer Methoden lautet in PS: [<Klasse>]::<statische Methode>(<parameter1,parameter2,....>) bzw. für die Stringklasse [System.String]::IsNullOrEmpty($a) -> True/ False [System.String]::Concat($a,$b) usw.. für nicht statische Methoden (also die ohne rotes "S") muss dagegen zuerst ein Objekt mit z.B. "New-Object" gebaut werden $a=New-Object System.String("ddd") $a.ToUpper() Die String-Klasse ist natürlich nicht so wahnsinnig interessant :-) blub 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.