web-dev-qa-db-fra.com

avoir les fichiers de retour Powershell get-childitem uniquement

J'aimerais utiliser get-childitem de manière récursive, mais lui demander uniquement de renvoyer des fichiers et non des répertoires. La meilleure solution que j'ai n'a pas l'air naturelle:

gci . *.* -rec | where { $_.GetType().Name -eq "FileInfo" }
74

Essaye ça:

gci . *.* -rec | where { ! $_.PSIsContainer }
72
Andy

Dans Powershell 3.0, c'est plus simple,

gci -Directory #List only directories
gci -File #List only files

C'est encore plus court,

gci -ad # alias for -Directory
gci -af # alias for -File
97
iraSenthil

Dans PowerShell 3.0, vous pouvez également utiliser le paramètre -Attributes récemment ajouté
(avec les opérateurs logiques)

Get-ChildItem -Recurse -Attributes !Directory+!System

Golfé

dir -r -Attributes !D
2
nixda