我如何使用powershell计算文件夹下的文件数和文件夹数,模拟该文件夹的Windows“属性”?
FAQ表示交叉发布是正常的,因此完整的问题可以在以下网址找到:https://superuser.com/questions/605911/multiple-counts-from-powershell-get-childitem
答案 0 :(得分:3)
基本上,您需要枚举给定路径的所有文件和文件夹,并维护每种对象类型的计数:
$files=$folders=0
$path = "d:\temp"
dir $path -recurse | foreach { if($_.psiscontainer) {$folders+=1} else {$files+=1} }
"'$path' contains $files files, $folders folders"
答案 1 :(得分:0)
修改强>
编辑以提高效率并停止循环...
也可以将Measure-Object
cmdlet与Get-childItem
cmdlet一起使用来完成此操作:
gci "C:\" -rec | Measure -property psiscontainer -max -sum | Select `
@{Name="Path"; Expression={$directory.FullName}},
@{Name="Files"; Expression={$_.Count - $_.Sum}},
@{Name="Folders"; Expression={$_.Sum}}
<强>输出:强>
Path Files Folders
---- ----- -------
C:\Test 470 19