none
Variable an Get-ADObject -Filter übergeben, funktioniert nicht RRS feed

  • Frage

  • Hallo Zusammen,

    Ich möchte über Get-ADObject einen Wert in eine Variable schreiben. Diesen möchte ich dann für eine andere Abfrage weiter verwenden.

    Wenn ich es über die Variable mache funktioniert es nicht, wenn ich den Wert direkt als "String" rein schreibe klappt das ganze.

    Script:

    # löschen des ActiveSyncDevice Containers
    $ParentObject = Get-ADObject -Identity $(Get-ActiveSyncDevice -Mailbox $adAccount -DomainController $dc | select Guid).guid -Properties msDS-parentdistname | select msDS-parentdistname

    $ContainerGUID = Get-ADObject -Filter { DistinguishedName -eq <Variable> } | select ObjectGUID

    # löschen des ActiveSyncDevice
    Remove-ADObject -Identity $(Get-ActiveSyncDevice -Mailbox $adAccount -DomainController $dc | select Guid).guid -Confirm:$false -WhatIf

    # löschen des ActiveSyncDevice Containers
    Remove-ADObject -Filter { ObjectGUID -eq <Variable> } -Confirm:$false -Recursive -WhatIf

    Fehler:

    Hat mir hier jemand einen Idee.

    Vielen Dank

    Grüße

    Marius

    Freitag, 19. Juni 2015 08:33

Antworten

  • Hallo,

    nicht getestet aber ich denke mal du musst bei den Selects den expand parameter nutzen.

    $ParentObject = Get-ADObject -Identity $(Get-ActiveSyncDevice -Mailbox $adAccount -DomainController $dc | select Guid).guid -Properties msDS-parentdistname | select -ExpandProperty msDS-parentdistname

    Hier an einem anderen Beispiel siehts Du den Unterschied was geliefert wird.

    PS E:\scripte> $a = Get-Process powershell* | Select-Object ProcessName
    PS E:\scripte> $a
    
    ProcessName
    -----------
    powershell
    
    
    PS E:\scripte> $a = Get-Process powershell* | Select-Object -ExpandProperty ProcessName
    PS E:\scripte> $a
    powershell
    PS E:\scripte>



    Beste Gruesse
    brima


    • Bearbeitet brima Freitag, 19. Juni 2015 09:15
    • Als Antwort markiert Marius El Freitag, 19. Juni 2015 11:45
    Freitag, 19. Juni 2015 09:11

Alle Antworten

  • Hallo,

    nicht getestet aber ich denke mal du musst bei den Selects den expand parameter nutzen.

    $ParentObject = Get-ADObject -Identity $(Get-ActiveSyncDevice -Mailbox $adAccount -DomainController $dc | select Guid).guid -Properties msDS-parentdistname | select -ExpandProperty msDS-parentdistname

    Hier an einem anderen Beispiel siehts Du den Unterschied was geliefert wird.

    PS E:\scripte> $a = Get-Process powershell* | Select-Object ProcessName
    PS E:\scripte> $a
    
    ProcessName
    -----------
    powershell
    
    
    PS E:\scripte> $a = Get-Process powershell* | Select-Object -ExpandProperty ProcessName
    PS E:\scripte> $a
    powershell
    PS E:\scripte>



    Beste Gruesse
    brima


    • Bearbeitet brima Freitag, 19. Juni 2015 09:15
    • Als Antwort markiert Marius El Freitag, 19. Juni 2015 11:45
    Freitag, 19. Juni 2015 09:11
  • Hallo Brima,

    das war es :)

    Vielen Dank für den Tipp

    Grüße

    Marius

    Freitag, 19. Juni 2015 11:45