Script purpose
Calculate the size in bytes of a folder.
Script notes
I have some scripts that move folders from one drive to another or one pc to another. I use this to log size of folders that I move, before and after the move is completed.
The second script displays the bytes in a more user/log friendly manner.
function Get-FolderSize([string]$FolderPath) { <# .Synopsis gets the folder size recursive .Example [long]$result = Get-FolderSize "C:\temp" .Parameter Source .Link http://heazlewood.blogspot.com/ #> [long]$FolderLength = (Get-ChildItem -LiteralPath $FolderPath -Recurse | Measure-Object -Property Length -Sum).Sum return $FolderLength } # function Get-BytesasString([long]$Bytes) { <# .Synopsis Displays the bytes in a pretty way .Link http://heazlewood.blogspot.com/ #> if ($Bytes -gt 1073741823) { [Decimal]$size = $Bytes / 1073741824 return "{0:##.##} GB" -f $size } elseif ($Bytes -gt 1048575) { [Decimal]$size = $Bytes / 1048576 return "{0:##.##} MB" -f $size } elseif ($Bytes -gt 1023) { [Decimal]$size = $Bytes / 1024 return "{0:##.##} KB" -f $size } elseif ($Bytes -gt 0) { [Decimal]$size = $Bytes return "{0:##.##} bytes" -f $size } else { return "0 bytes"; } }
No comments:
Post a Comment