Vorrei usare ricorsivamente get-childitem, ma ho solo restituito file non directory. La migliore soluzione che ho non sembra naturale:
gci . *.* -rec | where { $_.GetType().Name -eq "FileInfo" }
Vorrei usare ricorsivamente get-childitem, ma ho solo restituito file non directory. La migliore soluzione che ho non sembra naturale:
gci . *.* -rec | where { $_.GetType().Name -eq "FileInfo" }
Risposte:
In Powershell 3.0, è più semplice,
gci -Directory #List only directories
gci -File #List only files
Questo è ancora più breve,
gci -ad # alias for -Directory
gci -af # alias for -File
In PowerShell 3.0 è inoltre possibile utilizzare il -Attributes
parametro appena aggiunto
(insieme agli operatori logici)
Get-ChildItem -Recurse -Attributes !Directory+!System
golfed
dir -r -Attributes !D
In PowerShell 2.0 la soluzione migliore e più semplice che mi è venuta in mente è quella di includere tutti i file con un'estensione:
get-childitem -Recurse -include *.*
le cartelle non hanno un'estensione quindi sono escluse, attenzione a nessuna estensione denominata file.