De multiples -et -ou en PowerShell Où l'Objet-déclaration

PS H:\> Invoke-Command -computername SERVERNAME { Get-ChildItem -path E:\dfsroots\datastore2\public} | Where-Object {{ $_.e
xtension-match "xls" -or $_.extension-match "xlk" } -and  { $_.creationtime -ge "06/01/2014"}}

Ci-dessus est mon exemple de code. Je suis en train d'exécuter à distance ce PowerShell code sur mon serveur de fichier et l'avoir de retour .xls et .xlk fichiers avec la date de création ou plus tard 6/1/2014. Lorsque j'exécute ce code, il commence à cracher tous les dossiers que l'emplacement distant. Si seulement j'comparer deux choses:

PS H:\> Invoke-Command -computername SERVERNAME { Get-ChildItem -path E:\dfsroots\datastore2\public} | Where-Object { $_.extension-match "xls" -and  $_.creationtime -ge "06/01/2014"}

Uniquement les fichiers xls créé après que l'affichage de la date. Ce qui se passe ici? Ai-je besoin d'utiliser autre chose que nest -and et -or déclarations?

Notez qu'à la rupture de la commande en plusieurs "où" les états ne fonctionne pas non plus. Je serais entrer la commande: PS H:\> Invoke-Command -computername SERVERNAME { Get-ChildItem -chemin E:\dfsroots\datastore2\public} | where-Object { $_.ex tension-match "xls" -ou $_.extension-match "xlk" } | where-object { $_.creationtime -ge "06/01/2014"} Et il commence à cracher des fichiers xlsx qui n'est pas ce que je veux.
L'utilisation des parenthèses, pas des accolades pour joindre les options, donc Where{($_.Extension -Match "xls" -or $_.Extension -Match "xlk") -and $_.CreationTime -ge "06/01/2014"}
si vous pouviez m'aider juste une minute, je ne peut pas comprendre ce mini-Markdown mise en forme qui fonctionne et ce qui ne l'est pas. Comment avez-vous placez ce dans un bloc "code"?
Même en utilisant des parenthèses les résultats encore cracher fichiers xlsx.
re: Markdown. cliquez sur le lien aide situé à côté de la zone de commentaire pour la mise en forme de l'aide. Entourer le code avec les backticks `.

OriginalL'auteur Winski Tech | 2014-07-10