【问题标题】:Get the size of the files that consuming huge space using PowerShell [duplicate]使用 PowerShell 获取占用大量空间的文件的大小 [重复]
【发布时间】:2026-02-24 05:10:01
【问题描述】:

如何使用 PowerShell 获取文件的大小,例如 .mdf.ldf 和其他文件扩展名,以便找出占用大量空间的文件格式。

此外,我想获取每个文件的作者Last Modified By

我曾尝试使用 cmdlet Get-ItemGet-ChildItem 提取文件系统中存在的文件的信息,例如 D:\E:\

【问题讨论】:

    标签: powershell filesystems


    【解决方案1】:

    当您使用 Get-ItemGet-ChildItem 之类的 cmdlet 从文件系统中检索有关文件的信息时,它们会返回 FileInfo 对象,所有这些对象都具有 Length 属性 - 的大小(以字节为单位)磁盘上的那个文件。

    例如,如果要查找目录结构中最大的 10 个文件,可以使用 Sort-ObjectSelect-Object,如下所示:

    Get-ChildItem -File -Recurse | Sort-Object Length -Descending| Select-Object FullName,Length -First 10
    

    【讨论】:

      【解决方案2】:

      如果您想知道某个文件夹或驱动器中有多少特定文件类型的Mb,您可以使用以下命令:

      Get-ChildItem "C:\" -Filter "*.mdf" -Recurse | %{$_.Length} | measure -Sum | select -ExpandProperty Sum | %{"$($_/1024/1024) Mb"}
      

      只需更改每个分机的文件夹和-Filter 参数,您将在Mb 中返回它们的金额。

      注意:在较大的目录上运行它需要一些时间来递归。

      【讨论】: