Get-ChildItem -Filter Array

Question:

Situation:

  1. Get-ChildItem $Path -Filter *.dll works for me
  2. This works:
  3. But I cannot get this working:

Error message:

Cannot convert ‘System.Object[]’ to the type ‘System.String’ required by parameter ‘Filter’. Specified method is not supported.

Questions:

  1. Does this mean that -Include supports multiple values, but -Filter only allows one value?
  2. If the above explaination is correct, is there a way I could have discovered this from Get-Help gci?

Answer:

Does this mean that -Include supports multiple values, but -Filter only allows one value?

Yes.

If the above explaination is correct, is there a way I could have discovered this from Get-Help gci?

Yes, but you do not get much information by Get-Help gci -Parameter Filter. But you still can see it is a string, not an array. As for the details, Filter is a provider-specific filter. Get-Help gci cannot tell you anything about implementation in a particular provider. In theory, Get-Help FileSystem (help about this provider) should have explained this.

P.S. Also note that this filter rather uses CMD wildcard rules than PowerShell wilcard rules.

Source:

Get-ChildItem -Filter Array by licensed under CC BY-SA | With most appropriate answer!

Leave a Reply