Quels dossiers monopolisent votre lecteur de disque? Découvrez-le avec ce guide Windows.
Si vous souhaitez rechercher les dossiers qui occupent votre espace de stockage, vous pouvez vérifier la taille du dossier pour déterminer ce qui accapare votre lecteur. La vérification de la taille du dossier est également utile si vous devez déplacer un dossier volumineux vers une clé USB ou un stockage en nuage. Un moyen simple de le faire sous Windows consiste à utiliser l'Explorateur de fichiers et à ouvrir la boîte de dialogue Propriétés du dossier.
L'explorateur de fichiers, cependant, peut être lent à déterminer la taille d'un dossier volumineux. Et pas idéal si vous souhaitez gérer des fichiers et des dossiers sur plusieurs ordinateurs dans une organisation. Pour remédier à cela, vous pouvez utiliser PowerShell pour calculer rapidement la taille des dossiers sous Windows.
Comment calculer la taille d'un dossier à l'aide de PowerShell sous Windows
Pour calculer la taille d'un dossier, vous devez utiliser les deux applets de commande PowerShell, Get-ChildItem et Measure-Object, suivies de la propriété Length et du paramètre Sum.
L'applet de commande Get-ChildItem vous permet de récupérer des informations à partir d'un répertoire spécifié et de ses sous-répertoires. L'applet de commande Measure-Object et les propriétés et paramètres associés calculent la somme de la propriété length pour les éléments renvoyés par l'applet de commande Get-ChildItem (alias « cgi »).
Si vous débutez avec PowerShell, vous voudrez peut-être lire notre explicatif sur applets de commande PowerShell essentielles pour comprendre les bases de PowerShell.
Maintenant que vous êtes familiarisé avec les commandes PowerShell, voici comment les utiliser pour obtenir n'importe quelle taille de dossier.
- appuie sur le Gagner clé et type powershell.
- Ensuite, faites un clic droit sur WindowsPowerShell et sélectionnez Exécuter en tant qu'administrateur. Cliquez sur Oui si vous y êtes invité Contrôle de compte d'utilisateur.
- Dans la fenêtre PowerShell, saisissez la commande suivante :
Get-ChildItem FolderPath | Measure-Object -Property Length -sum
- Dans la commande ci-dessus, remplacez CheminDossier avec le chemin du répertoire où votre dossier est enregistré. Par exemple, si vous souhaitez calculer la taille du dossier de téléchargement situé dans le E: \ drive, alors la commande complète ressemblera à ceci :
Get-ChildItem E:\Download | Measure-Object -Property Length -sum
- Le retour affichera le nombre d'éléments dans le dossier et sa taille en octets. Vous devrez diviser la somme totale par 1024 pour obtenir la taille Ko (Kilo-octets). Divisez-le par 1024 encore une fois pour obtenir la taille Mo (Mégaoctets) et ainsi de suite.
Vous pouvez également utiliser la propriété .sum pour récupérer la taille totale et la diviser par 1 million ou milliard pour la convertir en mégaoctets ou gigaoctets.
Par exemple, si vous voulez connaître la valeur en gigaoctets (Mo), tapez la commande suivante et appuyez sur Entrer:
(gci E:\Download | measure Length -s).sum / 1Mb
De même, remplacez 1Mo avec 1 Go pour récupérer la taille du dossier en gigaoctets.
(gci E:\Download | measure Length -s).sum / 1Gb
Si vous souhaitez identifier la taille de types de fichiers spécifiques dans un répertoire, vous pouvez utiliser le caractère générique * suivi du type d'extension de fichier. Il n'affichera que la taille du fichier pour le type de fichier spécifié.
Par exemple, pour connaître l'espace occupé par les images dans un dossier, utilisez la commande suivante :
(gci E:\download *.jpg | measure Length -s).sum / 1Mb
L'ajout d'un caractère générique vous permet de déterminer si un type de fichier spécifique occupe le plus d'espace dans le dossier. Vous pouvez ensuite filtrer le contenu en fonction de l'extension du fichier et le supprimer ou le déplacer si nécessaire.
Comment obtenir la taille du sous-dossier à l'aide de PowerShell
La commande ci-dessus ne calculera que la taille de votre répertoire ou dossier principal. Pour calculer la taille totale des fichiers dans le répertoire spécifié et ses sous-répertoires, vous devrez ajouter le -Récursif paramètre à la commande ci-dessus. De plus, nous utiliserons le paramètre -force pour accéder aux fichiers cachés et système.
Par exemple, pour obtenir la taille totale de votre répertoire C:\Users et de ses sous-répertoires, y compris les fichiers cachés, la commande PowerShell ressemblera à ceci :
((gci -force c:\Users -Recurse -ErrorAction SilentlyContinue| measure Length -s).sum / 1Gb)
La sortie dans ce cas montre environ 54 Go. comme taille totale du dossier c:\users. Dans la commande ci-dessus, le paramètre -ErrorAction SilentlyContinue est utilisé pour supprimer tout message d'erreur susceptible de se produire au cours du processus.
Comment obtenir la taille du sous-dossier dans un format de tableau à l'aide de PowerShell
Si vous souhaitez connaître la taille de tous les sous-dossiers individuellement, vous pouvez exécuter un script PowerShell pour obtenir une vue graphique de tous les sous-dossiers et de leurs tailles. Un script est généralement utile si vous avez un grand répertoire avec plusieurs sous-dossiers et que vous devez travailler dessus fréquemment.
Pour exécuter ce script, vous pouvez utiliser PowerShell ISE. Voici comment procéder :
- appuie sur le Clé de victoire et tapez PowerShell ISE. Cliquer sur Windows PowerShell ISE à partir du résultat de la recherche.
- Ensuite, copiez et collez la commande suivante dans la console PowerShell ISE. Assurez-vous de changer le répertoire de c:\ vers votre répertoire préféré.
$targetfolder = 'C:\'
$dataColl = Get-ChildItem -Force $targetfolder -Directory -ErrorAction SilentlyContinue | ForEach-Object {
$len = Get-ChildItem -Recurse -Force $_.FullName -File -ErrorAction SilentlyContinue | Measure-Object -Property Length -Sum | Select-Object -ExpandProperty Sum
$foldername = $_.FullName
$foldersize = '{0:N2} GB' -f ($len / 1Gb)
[PSCustomObject]@{
foldername = $foldername
foldersizeGb = $foldersize
}
}
$dataColl | Out-GridView -Title "Size of Subdirectories in $targetfolder" - Ensuite, cliquez sur Script de lancement ou appuyez sur F5 et attendez que le script s'exécute. Selon la taille du dossier, vous verrez un "Taille des sous-répertoires" boîte de dialogue listant tous les sous-répertoires avec leur taille.
En plus de cela, vous pouvez utiliser les opérateurs de comparaison PowerShell pour filtrer les résultats. Par exemple, pour obtenir la taille de fichier des dossiers créés entre juin 2023 et juillet 2023, vous pouvez utiliser la commande suivante :
(gci -force E:\Download – Recurse -ErrorAction SilentlyContinue |? {$_.CreationTime -gt '01/23/23' -AND $_.CreationTime -lt '02/23/23'}| measure Length -s).sum / 1Gb
Dans la commande ci-dessus, "?" est un alias pour le Où-Objet applet de commande, -gt, -ET, -Il sont des opérateurs de comparaison, et Temps de creation est une condition. La commande vérifie si le CreationTime des fichiers dans le sous-répertoire se situe dans la plage de dates spécifiée et affiche la sortie uniquement si la condition est satisfaite. Si vous obtenez une erreur, assurez-vous que le format de la date et de l'heure dans la commande correspond au format du système et réessayez.
Obtenir la taille du dossier et du sous-dossier à l'aide de PowerShell
L'explorateur de fichiers sous Windows peut vous aider à calculer la taille de n'importe quel dossier et fichier. Cependant, si vous travaillez avec plusieurs dossiers volumineux ou dans une organisation avec des centaines d'ordinateurs à gérer, l'utilisation de PowerShell peut vous aider à faire avancer les choses plus rapidement.
Cela dit, si vous préférez une solution plus basée sur l'interface graphique, envisagez d'utiliser un outil d'analyse de disque. Ces outils peuvent vous aider à visualiser la structure des fichiers du système et afficher un rapport détaillant le contenu occupant le plus d'espace sur votre système.