使用 powershell 计算子文件夹中具有特定名称的文件数
Using powershell to count number of files in subfolder with specific name
所以我开始着手解决一个问题,我需要知道某个名称的子文件夹中有多少文件,该名称在整个目录中重复多次。我要计算的所有文件夹都具有相同的名称。例如:
Main Folder
Subfolder
Folder I want to count
Folder A
Folder B
Subfolder
Folder I want to count
Folder C
Folder D
我可以递归地计算所有子文件夹中的文件数量,但我不知道如何只查看名为“我要计算的文件夹”的文件夹.
这是我到目前为止计算所有内容的地方。我需要什么add/modify只在我想要的区域看和数。我对 supershell 不熟悉,一直在努力理解各种问题并将其拼凑在一起。
Get-ChildItem -recurse | Where {!$_.PSIsContainer} | Group Directory | Format-Table Name, Count -autosize
我可能会做这样的事情。
首先获取所有文件夹,然后运行通过它们。如果文件夹是 "folder_I_want",则获取计数。
$folders = Get-ChildItem C:\Users\David\Documents\SAPIEN\test -Recurse | ?{ $_.PSIsContainer } | select name, fullname
foreach ($folder in $folders)
{
#Write-Host "$folder"
if ($folder.name -eq "folder_I_want")
{
$fullname = $folder.fullname
#Gets the count of the files in "Folder I want". It will filter out folders.
$count = (Get-ChildItem $fullname | where { $_.PSIsContainer -EQ $false }).count
Write-Host "The amount of files in the folder I want: $count"
}
}
是这样的吗?
(gci -Path c:\temp\ -Recurse -File | where fullname -like "*\yourname\*").Count
所以我开始着手解决一个问题,我需要知道某个名称的子文件夹中有多少文件,该名称在整个目录中重复多次。我要计算的所有文件夹都具有相同的名称。例如:
Main Folder
Subfolder
Folder I want to count
Folder A
Folder B
Subfolder
Folder I want to count
Folder C
Folder D
我可以递归地计算所有子文件夹中的文件数量,但我不知道如何只查看名为“我要计算的文件夹”的文件夹.
这是我到目前为止计算所有内容的地方。我需要什么add/modify只在我想要的区域看和数。我对 supershell 不熟悉,一直在努力理解各种问题并将其拼凑在一起。
Get-ChildItem -recurse | Where {!$_.PSIsContainer} | Group Directory | Format-Table Name, Count -autosize
我可能会做这样的事情。
首先获取所有文件夹,然后运行通过它们。如果文件夹是 "folder_I_want",则获取计数。
$folders = Get-ChildItem C:\Users\David\Documents\SAPIEN\test -Recurse | ?{ $_.PSIsContainer } | select name, fullname
foreach ($folder in $folders)
{
#Write-Host "$folder"
if ($folder.name -eq "folder_I_want")
{
$fullname = $folder.fullname
#Gets the count of the files in "Folder I want". It will filter out folders.
$count = (Get-ChildItem $fullname | where { $_.PSIsContainer -EQ $false }).count
Write-Host "The amount of files in the folder I want: $count"
}
}
是这样的吗?
(gci -Path c:\temp\ -Recurse -File | where fullname -like "*\yourname\*").Count