56 votes

Comment puis-je vérifier la taille d'un dossier à partir de la ligne de commande Windows ?

Je veux utiliser la ligne de commande Windows pour calculer la taille de tous les fichiers d'un dossier et d'un sous-dossier. Normalement, je le ferais en cliquant avec le bouton droit de la souris sur le dossier et en cliquant sur "Propriétés", mais je veux pouvoir le faire en ligne de commande.

Quelle commande puis-je utiliser ?

2voto

Je réalise que cette question demandait une analyse de la taille du fichier en utilisant CMD line . Mais si vous êtes prêt à utiliser PowerQuery (Excel add-in, versions 2010+) alors vous pouvez créer des analyses de taille de fichier assez convaincantes.

Le script ci-dessous peut être collé dans une requête vierge ; la seule chose que vous aurez à faire est d'ajouter un paramètre nommé "paramRootFolderSearch" puis d'ajouter votre valeur, comme " C:\Users\bl0040\Dropbox\ ". Je m'en suis servi comme guide : MSSQLTips : Récupérer les tailles de fichiers du système de fichiers à l'aide de Power Query .

Cette requête m'a fourni les données nécessaires pour créer un tableau croisé dynamique ( [Folder Root]> [Folder Parent (1-2)], [Name] ), et j'ai pu identifier quelques fichiers que j'ai pu supprimer, ce qui a libéré beaucoup d'espace dans mon répertoire.

Voici le script de M pour PowerQuery :

let
// Parmameters:
    valueRootFolderSearch = paramRootFolderSearch,
    lenRootFolderSearch = Text.Length(paramRootFolderSearch),
//

    Source = Folder.Files(paramRootFolderSearch),
    #"Removed Other Columns" = Table.RenameColumns(
Table.SelectColumns(Source,{"Name", "Folder Path", "Attributes"})
,{{"Folder Path", "Folder Path Full"}}),
    #"Expanded Attributes" = Table.ExpandRecordColumn(#"Removed Other Columns", "Attributes", {"Content Type", "Kind", "Size"}, {"Content Type", "Kind", "Size"}),
    #"fx_Size(KB)" = Table.AddColumn(#"Expanded Attributes", "Size(KB)", each [Size]/1024),
    #"fx_Size(MB)" = Table.AddColumn(#"fx_Size(KB)", "Size(MB)", each [Size]/1048576),
    #"fx_Size(GB)" = Table.AddColumn(#"fx_Size(MB)", "Size(GB)", each [Size]/1073741824),
    fx_FolderRoot = Table.AddColumn(#"fx_Size(GB)", "Folder Root", each valueRootFolderSearch),
    helper_LenFolderPathFull = Table.AddColumn(fx_FolderRoot, "LenFolderPathFull", each Text.Length([Folder Path Full])),
    fx_FolderDepth = Table.AddColumn(helper_LenFolderPathFull, "Folder Depth", each Text.End([Folder Path Full], [LenFolderPathFull]-lenRootFolderSearch+1)),
    #"helperList_ListFoldersDepth-Top2" = Table.AddColumn(fx_FolderDepth, "tmp_ListFoldersDepth", each List.Skip(
  List.FirstN(
    List.RemoveNulls(
      Text.Split([Folder Depth],"\")
    )
  ,3)
,1)),
    #"ListFoldersDepth-Top2" = Table.TransformColumns(#"helperList_ListFoldersDepth-Top2", 
{"tmp_ListFoldersDepth", each "\" & Text.Combine(List.Transform(_, Text.From), "\") & "\"
, type text}),
    #"Select Needed Columns" = Table.SelectColumns(#"ListFoldersDepth-Top2",{"Name", "Folder Root", "Folder Depth", "tmp_ListFoldersDepth", "Content Type", "Kind", "Size", "Size(KB)", "Size(MB)", "Size(GB)"}),
    #"rename_FoldersParent(1-2)" = Table.RenameColumns(#"Select Needed Columns",{{"tmp_ListFoldersDepth", "Folders Parent (1-2)"}})
in
    #"rename_FoldersParent(1-2)"

Taille des fichiers du dossier_xlsx.png

enter image description here

Taille des fichiers du dossier_xlsx2.png

enter image description here

1voto

Mike Poole Points 111

Microsoft propose un outil appelé Disk Usage qui crée un rapport CSV.

Du (disk usage) rapporte l'utilisation de l'espace disque pour le répertoire que vous spécifiez. Par défaut, elle récure les répertoires pour afficher la taille totale d'un répertoire et de ses sous-répertoires.

Voici comment l'utiliser :

Utilisation : du [-c[t]] [-l | -n | -v] [-u] [-q] Paramètre Description

Où se trouvent les options :

-c  Print output as CSV. Use -ct for tab delimiting.
-l  Specify subdirectory depth of information (default is all levels).
-n  Do not recurse.
-v  Show size (in KB) of intermediate directories.
-u  Count each instance of a hardlinked file.
-q  Quiet (no banner).

La sortie CSV est formatée comme suit :

Chemin, Nombre actuel de fichiers, Taille actuelle des fichiers, Nombre de fichiers, Nombre de répertoires, Taille des répertoires.

Voici le lien officiel actuel .

0voto

Keltari Points 67159

dir /s Listera les tailles de tous les fichiers et les fichiers de tous les sous-dossiers.

0voto

tmac Points 9

Il suffit d'ouvrir la puissance Shell et faire un du -sh <directory> Il n'est pas nécessaire d'installer une tierce partie ou des composants internes au système. Dans Power-Shell, vous pouvez exécuter des commandes simples comme celles de Linux, comme les commandes ls ou du. ls -alt aura une erreur car powershell ne sait pas ce qu'est le -alt...

-3voto

vembutech Points 6082

La commande "dir" fournit la taille des fichiers, la date et l'heure de la dernière modification du répertoire actuel. Essayez tout d'abord de vous déplacer dans le répertoire dont vous souhaitez connaître la taille à l'aide de la commande cd puis utilisez la commande dir Befehl.

C:\>dir 

Liste la taille du fichier, la date et l'heure de la dernière modification de tous les fichiers et répertoires du répertoire dans lequel vous vous trouvez, par ordre alphabétique.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X