PS Get-MailContact Filter

  • Hallo,
    ich versuche grade mit Get-MailContact ein Filter zu erstellen.
    ich möchte alle MailContact wo CustomAttribute1 gleich test ist. Leider ist es egal wie ich das schreibe ich bekomme immer diesen Fehler:


    Code
    [PS] C:\>Get-Contact -Filter {extensionAttribute1 TEST}
    Get-Contact : Der Parameter "Filter" kann nicht an das Ziel gebunden werden. Au
    snahme beim Festlegen von "Filter": "'extensionAttribute1' ist keine bekannte f
    ilterbare Eigenschaft. Eine vollständige Liste der filterbaren Eigenschaften fi
    nden Sie in der Hilfe zum Befehl.
    'extensionAttribute1 BAU' an Position 1."
    Bei Zeile:1 Zeichen:20
    + Get-Contact -Filter  <<<< {extensionAttribute1 BAU}



    Ich finde einfach nicht die richtige Syntax
    für Get-Contact -Filter {extensionAttribute1 TEST}


    Kann da jemand helfen?


    Gruß
    Philipp

    • Offizieller Beitrag

    hallo,


    endlich mal eine PowerShell-Frage... :)


    Die richtige Syntax für den Filter würde lauten:
    "CustomAttribute1 -eq 'TEST'"


    Auf folgendes achten:
    1. in der EMS heißen die Dinger "CustomAttribute1" bis "CustomAttribute15"
    2. "Gleich" in der PS heißt "-eq"
    3. Links und rechts doppelte Anführungszeichen, innen einfache (das geht auch anders, reicht aber für den Anfang und ist übersichtlich)


    Ergebnis:


    Code
    get-contact -filter "CustomAttribute1 -eq 'TEST'"


    ABER: Ein Kontakt hat keine CustomAttributes, daher kannst Du natürlich auch nicht danach filtern.



    Und zum Abschluss noch:


    Ich persönlich würde das lieber so formulieren:


    Code
    get-contact | where-object {$_.CustomAttribute1 -eq 'TEST' }


    Vorteil: Das geht immer, den "-filter" kennt so nur Exchange. Aber auch in diesem Fall findest Du keine CustomAttribute, da ein Contact einfach keine hat.

  • echt nicht? Ich kann beim Contact kein CustomAttribute verwenden? Weil über die EMK kann ich welche einstellen.



    Gruß
    Philipp



    P.S: Sind Powersehll fragen hier so selten?

    • Offizieller Beitrag

    MEA CULPA, mein Fehler.


    Das CMDLET heißt natürlich nicht "get-contact", sondern "get-mailcontact".....


    Code
    get-mailcontact -filter "CustomAttribute1 -eq 'TEST'"
    
    
    oder
    
    
    get-mailcontact | where-object {$_.CustomAttribute1 -eq 'TEST' }


    Ich habe von Dir get-contact übernommen, ohne zu prüfen, ob es das richtige CMDLET ist.


    Und dann findet man auch die CustomAttributes.


    Nochmal Sorry.