Powershell脚本用于汇总文件夹中的文件。给我文件夹名称和文件计数

时间:2013-12-17 10:26:57

标签: powershell powershell-v2.0 powershell-v3.0

我再次:),我仍然在学习,但慢慢变得更好

这次我在一个脚本上收集文件夹中的文件但是我不知道的2个上层文件夹名称。所以我首先有一个双通配符。

我需要的是:显示配置文件夹中的文件数量,并在之前为我们命名。

完美将是这样的:... \ folder1 \ folder2 \ configurations \文件数量:3

我的脚本到目前为止工作正常,但它只是给了我一个很长的列表,如果我在一个文件夹中有50个项目而不是太多。

$sumconfigs = (get-childitem -recurse "C:\appfolder\data\*\*\configurations" | where-object {$_.Name -ne "configuration.zip"} | Where {$_.psIsContainer -eq $false})

foreach ($config in $sumconfigs)
{
write-host $config.FullName
}

1 个答案:

答案 0 :(得分:2)

首先获取文件夹列表,然后递归到它们中:

Get-Item 'C:\appfolder\data\*\*\configurations' | % {
  $dir = $_.FullName
  $cnt = Get-ChildItem $dir -Recurse | ? {
           $_.Name -ne 'configuration.zip' -and -not $_.PSIsContainer
         } | Measure-Object | select -Expand Count
  if ($cnt -gt 0) { "{0} number of files: {1}" -f $dir, $cnt }
}