¿Cómo puedo enumerar directorios y sus tamaños en el símbolo del sistema?

Respuestas:

19

Pruebe la utilidad de uso de disco de Sysinternals. Específicamente, du -l 1debe mostrar el tamaño de cada subdirectorio del directorio actual. Para obtener más información, ejecute dusin ningún parámetro.


Si PowerShell está bien, intente lo siguiente:

Get-ChildItem |
Where-Object { $_.PSIsContainer } |
ForEach-Object {
  $_.Name + ": " + (
    Get-ChildItem $_ -Recurse |
    Measure-Object Length -Sum -ErrorAction SilentlyContinue
  ).Sum
}

Los tamaños están en bytes. Para formatearlos en una unidad más grande como MB, intente lo siguiente (condensado en una línea):

Get-ChildItem | Where-Object { $_.PSIsContainer } | ForEach-Object { $_.Name + ": " + "{0:N2}" -f ((Get-ChildItem $_ -Recurse | Measure-Object Length -Sum -ErrorAction SilentlyContinue).Sum / 1MB) + " MB" }

Para obtener más información, consulte este artículo en Technet .

Si desea un formato más flexible de los tamaños (eligiendo kB / MB / GB / etc. en función del tamaño real), consulte esta pregunta y sus respuestas .


No creo que sea posible hacer lo que quiere desde la línea de comandos regular y con solo unos pocos comandos simples. Vea este script como ejemplo (no voy a copiarlo aquí porque no creo que valga la pena seguir ese enfoque, a menos que PowerShell no esté disponible y las utilidades de terceros no sean aceptables).

Indrek
fuente
Se ve bien. Va a esperar un poco para ver si hay una forma nativa de hacer esto en símbolo del sistema :)
giorgio79
@ giorgio79 Ver respuesta actualizada. Es factible de forma nativa en el símbolo del sistema, pero recomendaría el uso del disco o el uso de PowerShell.
Indrek
0

No tengo experiencia duen Linux. Pero en Windows utilizo dir /spara enumerar todas las carpetas y subcarpetas junto con los tamaños de archivo.

Ankit
fuente
1
El /Sconmutador no muestra los tamaños de los directorios, simplemente hace que el comando pase recursivamente por todos los subdirectorios.
Indrek
3
Mire cuidadosamente, también muestra el tamaño de cada carpeta. Aunque no es muy legible para humanos.
Ankit
Ah, sí, entiendo lo que quieres decir: en la lista de archivos de cada subdirectorio, se muestra el tamaño total de todos los archivos en ese directorio. Sin embargo, como usted dice, no es realmente fácil de leer, y los tamaños no se muestran de forma recursiva.
Indrek