【问题标题】:Powershell Filesize and Extension statistics after Get-ChildItemGet-ChildItem 后的 Powershell 文件大小和扩展名统计信息
【发布时间】:2014-10-24 14:31:28
【问题描述】:

我所做的是搜索文件并将其中一些文件及其绝对路径写入文件中。 现在经过这次搜索,我想要一些统计信息,比如扩展名、文件大小......

所以我需要阅读 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}

你有什么想法吗?谢谢

【问题讨论】:

  • 我对你想要什么有点困惑。一旦您点击“组对象”,您将删除几乎所有对象属性。您想要单个文件信息吗?

标签: arrays powershell


【解决方案1】:

我看到您从 Determine recursively both COUNT and SUM of all extensions in a folder 获得此代码。

我猜您正在修改它,以便您可以根据文本文件中的内容而不是路径来执行不同的位置。在这种情况下,这是可行的:

#Get all items
Get-ChildItem -Path (Get-content C:\Users\krla226\Desktop\file.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 从文本文件中提取文件路径。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-29
    • 2013-02-22
    • 1970-01-01
    • 2016-09-12
    • 2013-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多