如何通过Powershell批量获取文件大小?
如何通过Powershell批量获取文件大小?
效果图:
核心代码
$startFolder = "D:\" $colItems = (Get-ChildItem $startFolder | Where-Object {$_.PSIsContainer -eq $True} | Sort-Object) foreach ($i in $colItems) { $subFolderItems = (Get-ChildItem $i.FullName -recurse | Measure-Object -property length -sum) $FileSize="{0:N2}" -f ($subFolderItems.sum / 1GB) $Unit='GB' if($FileSize -lt 1) { $FileSize="{0:N2}" -f ($subFolderItems.sum / 1MB) $Unit='MB' } write-host $i.FullName ' -- ' $FileSize $Unit -fore green }
注意:如果是第一次运行需要开启执行脚本权限。
在powershell中运行如下命令,然后 Y 确认即可。
开启:set-executionpolicy remotesigned
关闭:Set-ExecutionPolicy Restricted