我所做的是搜索文件,并将其中一些文件及其绝对路径写入文件中。现在经过这次搜索,我想要一些统计数据,比如扩展名、文件大小。。。
所以我需要阅读file.txt并获得这些信息,在完成所有操作后,它应该显示统计数据。它还不起作用。。。
我想我必须将信息存储在数组中,以便稍后对它们进行分组。
$directory="d:file.txt"
get-content $directory|foreach {
MISSING PART?!
Get-ChildItem -Path $_ |
#Get only files
Where-Object { !$_.PSIsContainer } |
#Group by extension
Group-Object Extension |
#Get data
Select-Object @{n="Extension";e={$_.Name -replace '^.'}}, @{n="Size (MB)";e={[math]::Round((($_.Group | Measure-Object Length -Sum).Sum / 1MB), 2)}}, Count}
你知道吗?感谢
我看到你从递归地确定文件夹中所有扩展的COUNT和SUM中得到了这段代码。
我猜你是在修改它,这样你就可以根据文本文件中的内容做不同的位置,而不是路径。在这种情况下,这是有效的:
#Get all items
Get-ChildItem -Path (Get-content C:Userskrla226Desktopfile.txt) |
#Get only files
Where-Object { !$_.PSIsContainer } |
#Group by extension
Group-Object Extension |
#Get data
Select-Object @{n="Extension";e={$_.Name -replace '^.'}}, @{n="Size (MB)";e={[math]::Round((($_.Group | Measure-Object Length -Sum).Sum / 1MB), 2)}}, Count
与另一篇文章的答案相比,我所改变的只是使用Get-Content从文本文件中提取文件路径,而不是目录。