Je voudrais voir la taille des sous-dossiers dans un dossier, semblable à la commande linux du -sh
. Comment puis-je lister les répertoires et leurs tailles dans une invite de commande?
Essayez l’utilitaire Disk Usage de Sysinternals. Plus précisément, du -l 1
doit indiquer la taille de chaque sous-répertoire du répertoire en cours. Pour plus d'informations, exécutez du
sans aucun paramètre.
Si PowerShell est correct, essayez les solutions suivantes:
Get-ChildItem |
Where-Object { $_.PSIsContainer } |
ForEach-Object {
$_.Name + ": " + (
Get-ChildItem $_ -Recurse |
Measure-Object Length -Sum -ErrorAction SilentlyContinue
).Sum
}
Les tailles sont en octets. Pour les formater dans une unité plus grande telle que MB, essayez ce qui suit (condensé sur une ligne):
Get-ChildItem | Where-Object { $_.PSIsContainer } | ForEach-Object { $_.Name + ": " + "{0:N2}" -f ((Get-ChildItem $_ -Recurse | Measure-Object Length -Sum -ErrorAction SilentlyContinue).Sum / 1MB) + " MB" }
Pour plus d'informations, consultez cet article sur Technet .
Si vous souhaitez une mise en forme plus flexible des tailles (en choisissant ko/Mo/Go/etc en fonction de la taille réelle), consultez cette question et ses réponses .
Je ne pense pas qu'il soit possible de faire ce que vous voulez à partir de la ligne de commande normale et avec seulement quelques commandes simples. Voir ce script à titre d'exemple (ne le copiez pas ici car je ne crois pas que cette approche mérite d'être poursuivie, à moins que PowerShell ne soit pas disponible et les utilitaires tiers ne sont pas acceptables).
Je n'ai aucune expérience de du
sous Linux. Mais dans Windows, j’utilise dir /s
pour répertorier tous les dossiers et sous-dossiers ainsi que la taille des fichiers.