(Get-ChildItem -Path "C:mesScripts" -Recurse | measure-object Length -sum).SumC’est bien jolie et fonctionnel mais à caser dans une boucle ou une condition, ça prend de la place … Me fallait donc faire ma petite fonction pour rendre ça plus fonctionnel, la voilà :
Function ArboSize([string]$FolderPath, [string]$frmt)
{
$MySize = (Get-ChildItem -Path $FolderPath -Recurse | measure-object Length -sum).Sum
Switch ($frmt) {
kb {Return [double]($MySize/1KB)}
mb {Return [double]($MySize/1MB)}
gb {Return [double]($MySize/1GB)}
tb {Return [double]($MySize/1TB)}
default {Return [double]$MySize}
}
}
Il suffit d’appeler la fonction comme suit :
ArboSize <chemin> <format>format disponnible : « kb » – « mb » – « gb » – « tb ». Si omis, le résultat sera en bits. Cette option est à choisir si vous devez effectuer une/des opération(s) arithmétique. Aller, un petit exemple pour bien situer. La 2ème ligne, c’est pour formater la sortie avec 2 chiffres après la virgule (1,23)
$FolderSize = ArboSize "C:mesScripts" "mb"
"{0:N2}" -f $FolderSize
📖 Retrouve tous nos tutoriels Windows, sécurité et PowerShell dans notre Guide Windows, IT & Sécurité 2026.