HOWTO · PowerShell

如何在 PowerShell 中获取包括子文件夹在内的文件夹大小

本教程演示如何使用 PowerShell 获取包括子文件夹在内的文件夹大小。

本页内容

本教程演示了如何使用 PowerShell 获取文件夹大小,包括子文件夹。

使用 PowerShell 获取文件夹的大小,包括子文件夹

要获取文件夹的大小,我们需要一起运行几个命令。首先,我们需要获取给定文件夹的子项,测量文件夹的长度属性,最后,显示 Sum 对象。

请参见以下步骤:

获取给定文件夹的子项的命令是:

Get-ChildItem "C:\Users"

上述命令将显示给定文件夹的子项。这里,子项指的是子文件夹和其他项目:

    Directory: C:\Users


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
d-----         1/31/2022   1:24 PM                DefaultAppPool
d-r---         4/26/2021   3:32 PM                Public
d-----         11/1/2022   1:33 PM                Sheeraz
-a----         7/14/2022   2:33 PM            224 Example.java

如我们所见,文件夹有三个子文件夹和一个文件。现在,要获取所有子文件夹的所有项目,我们需要运行以下命令:

Get-ChildItem -Path "C:\Users" -Recurse -ErrorAction SilentlyContinue |

然后为了测量所有子文件夹和项目的大小,我们需要运行以下命令:

Measure-Object -Property Length -Sum |

最后,在测量文件夹所有内容的长度属性后,现在显示对象:

Select-Object Sum

总对象将显示文件夹的大小,包括子文件夹。并且为了显示文件夹中的项目数量,我们使用 Count 对象:

Select-Object Count

运行上述所有命令以一次性显示输出:

Get-ChildItem -Path "C:\Users" -Recurse -ErrorAction SilentlyContinue |
    Measure-Object -Property Length -Sum |
    Select-Object Sum
Select-Object Count

上述命令的输出是:

        Sum
        ---
38068067337

Count
-----
51885

文件夹 Users 的大小为 38068067337 字节,项目数量为 51885。我们还可以使用一行命令来以 MB 为单位显示给定文件夹的大小。

请参见命令:

"{0} MB" -f ((Get-ChildItem C:\Users\Sheeraz\ -Recurse | Measure-Object -Property Length -Sum -ErrorAction Stop).Sum / 1MB)

上述命令将以 MB 为单位显示文件夹 Sheeraz 的大小。请参见输出:

36304.1059274673 MB