Difference between -include and -filter in get-childitem

  1. Filter parameter is implemented by provider. It is efficient because applies when retrieving the objects. Get-PSprovider commandlet shows providers that implement 'filter' parameter. For example, there are only two providers on my system:ActiveDirectory and FileSystem

  2. Include parameter is implemented by Powershell. It only works in conjunction with Recurse parameter (as MSDN describes here).

  3. It's interesting that:

    get-childitem -path Desktop\Extras\ -include *.txt
    

    returns nothing

    get-childitem -path Desktop\Extras\* -include *.txt
    

    returns list of *.txt files

Maybe these are just nuances of the implementation.

Also see this excellent blog post: http://tfl09.blogspot.com/2012/02/get-childitem-and-theinclude-and-filter.html

Tags:

Powershell