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

ご覧のとおり、フォルダーには 3つのサブフォルダーと 1つのファイルがあります。さて、サブフォルダーのすべてのアイテムを取得するには、次のコマンドを実行する必要があります:

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 です。また、指定されたフォルダーのサイズを MBS で表示するためにワンライナーコマンドを使用することもできます。

コマンドを確認してください:

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

上記のコマンドは、フォルダーSheeraz のサイズを MBS で表示します。出力を確認してください:

36304.1059274673 MB