我想获取特定子文件夹中特定扩展名的所有文件,但可以位于文件系统中的任何级别,例如

Get-ChildItem ".\Source\**\Release\*.nupkg" -recurse

简单的星号有效,但在 Source 下的直接级别上进行搜索,但在树中看起来并不更深。

我希望从命令中获取此文件列表:
.\Source\Level1\Release\a.nupkg
.\Source\Level1\bin\Release\b.nupkg

有什么办法可以做到这一点吗?

更新

@JaredPar 的回答很有魅力!。但我的输出是:

目录:D:\Source\Level1\Release

ode LastWriteTime 名称
--- ------------- ----
a--- 08/23/2013 16:02 a.nupkg

目录:D:\Source\Level1\bin\Release

ode LastWriteTime 名称
--- ------------- ----
a--- 08/23/2013 16:02 b.nupkg

我需要得到一个包含所有文件的列表,而不是按目录分组,如下所示:

ode LastWriteTime 名称
--- ------------- ----
a--- 08/23/2013 16:02 a.nupkg
a--- 08/23/2013 16:02 b.nupkg

最佳答案

尝试以下

gci -re -attribute Directory Release |
%{ gci $_ -re -in *.nupkg }

第一个命令将在当前路径下查找名称为 Release 的所有目录值。然后,您可以在这些路径下专门搜索 *.nupkg 文件

关于powershell - 文件系统树的 "subfolder at any depth"的 Get-ChildItem 通配符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18446976/

10-12 16:38