WindowsのPowershellで、サブフォルダも含めたフォルダのサイズを調べたいとき。
Powershellでフォルダの容量を取得する
#容量を取得するフォルダパス
$filePath = "C:\"
#スクリプトのパス
$scriptRoot = Split-Path -Path $MyInvocation.MyCommand.Path
#スクリプトのパスに移動
cd $scriptRoot
"処理開始:" + (Get-Date).ToString("yyyy/MM/dd HH:mm:ss")
#指定パスのフォルダサイズを再帰的に取得(サブフォルダも含む)
#取得結果はスクリプトパスに出力
Get-ChildItem $filePath `
| Sort LastWriteTime `
| Select-Object Name, LastWriteTime, @{ name = "Size"; expression = { `
[math]::round((Get-ChildItem $_.FullName -Recurse -Force `
| Measure-Object Length -Sum `
).Sum ) `
} } | Format-Table -AutoSize > FolderSize.txt
"処理終了:" + (Get-Date).ToString("yyyy/MM/dd HH:mm:ss")
PowerShellの拡張子って「.ps1」なんですね。
「1」はなんなんでしょう…