可以在同一命令中使用 Get-ChildItem cmdlet 的多个参数。在混合使用参数之前,请确保您了解通配符匹配。例如,以下命令将不会返回完整的结果:
PS> Get-ChildItem -Path C:\Windows\*.dll -Recurse -Exclude [a-y]*.dll
它只会返回C:\Windows\下的不以a-y开头的dll。原因是你给的是具体的只是C:\Windows\下的*.dll,而这与递归的参数-recurse矛盾,因为-recurse将返回的是C:\Windows\目录及递归目录下所有符合要求的dll。
以下是正确的代码:
若要为名称与特定模式相匹配的文件指定递归搜索,请使用 -Include 参数。
PS> Get-ChildItem -Path C:\Windows -Include *.dll -Recurse -Exclude [a-y]*.dll