En sistemas linux listar el tamaño de los directorios se realiza de una manera muy sencilla con el comando du, pero en sistemas windows se complica un poco la cosa.
Utilizando un poco los recursos que ofrece windows sobre powershell en este enlace https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-powershell-1.0/ff730945(v=technet.10)?redirectedfrom=MSDN
Podremos obtener el listado de los directorios y su tamaño con este “corto” comando:
Get-ChildItem |
Where-Object { $_.PSIsContainer } |
ForEach-Object {
$_.Name + ": " + (
Get-ChildItem $_ -Recurse |
Measure-Object Length -Sum -ErrorAction SilentlyContinue
).Sum
}
Obtiendo el tamaño en bytes de la carpeta c:\xammp\apache por ejemplo
PS C:\xampp\apache> Get-ChildItem |
>> Where-Object { $_.PSIsContainer } |
>> ForEach-Object {
>> $_.Name + ": " + (
>> Get-ChildItem $_ -Recurse |
>> Measure-Object Length -Sum -ErrorAction SilentlyContinue
>> ).Sum
>> }
bin: 43546245
conf: 296841
error: 223398
icons: 441289
include: 1674556
lib: 3924595
logs: 29455226
manual: 22458703
modules: 5769728
scripts: 407
Y si nos nos gusta en bytes podemos utilizar este comando para obtener el tamaño en megabytes.
Get-ChildItem | Where-Object { $_.PSIsContainer } | ForEach-Object { $_.Name + ": " + "{0:N2}" -f ((Get-ChildItem $_ -Recurse | Measure-Object Length -Sum -ErrorAction SilentlyContinue).Sum / 1MB) + " MB" }
Con estos “cortitos” comando podeis consultar el tamaña de los directorios de forma sencilla, cuando quieres saber por donde se escapa el tamaño del disco.