我再次:),我仍然在学习,但慢慢变得更好
这次我在一个脚本上收集文件夹中的文件但是我不知道的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
}
答案 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 }
}