仅让 Powershell get-childitem 返回文件

Fra*_*man 93 powershell

我想递归地使用 get-childitem,但只让它返回文件而不是目录。我的最佳解决方案似乎并不自然:

gci . *.* -rec | where { $_.GetType().Name -eq "FileInfo" }
Run Code Online (Sandbox Code Playgroud)

小智 126

在 Powershell 3.0 中,它更简单,

gci -Directory #List only directories
gci -File #List only files
Run Code Online (Sandbox Code Playgroud)

这更短,

gci -ad # alias for -Directory
gci -af # alias for -File
Run Code Online (Sandbox Code Playgroud)

  • gci -File -Name 仅获取文件的名称 (2认同)

And*_*ndy 85

尝试这个:

gci . *.* -rec | where { ! $_.PSIsContainer }
Run Code Online (Sandbox Code Playgroud)

  • 如果您排除容器,则可以省略 * 。*, 对? (7认同)