La taille d’un dossier en PoSh

Dans le bon temps, nous avions accès à la propriété « Size » d’un objet ‘Dossier’ avec le FileSystemObject (le ‘FSO’) . Dans PowerShell (que j’aime bien quand même) la propriété n’est plus aussi simplement accessible. Je me suis fait une petite fonction toute simple pour la retrouver …

La ligne de code principale est la suivante :

(Get-ChildItem -Path "C:\mesScripts" -Recurse | measure-object Length -sum).Sum

C’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à :

Ma solution de montage vidéo : Quand on parle montage vidéo on arrive rapidement sur Adobe Première ou Final Cut Pro. Si c'est votre activité principale OK mais si c'est pour un usage personnel ou pour monter du VLOG je vous conseille une solution bien plus abordable financièrement et demandant moins d'expertise.

Ca fait 3 ans maintenant que j'ai abandonné Première pour Magix Vidéo Deluxe. Magix fait des logiciels professionnel comme Vega ou Pro X, mais sa version Vidéo Deluxe à 69 € seulement permet de faire des choses très impressionnantes même avec un PC assez basique.

Montage vidéo

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

Laissez un commentaire