2014-11-07 04:12:42 +0000 2014-11-07 04:12:42 +0000
39
39

¿Cómo puedo comprobar el tamaño de una carpeta desde la línea de comandos de Windows?

Quiero usar la línea de comandos de Windows para calcular el tamaño de todos los archivos de una carpeta y subcarpeta. Normalmente lo haría haciendo clic con el botón derecho del ratón en la carpeta y haciendo clic en “Propiedades”, pero quiero poder hacerlo desde la línea de comandos.

¿Qué comando puedo usar?

Respuestas (10)

35
35
35
2014-11-07 06:34:25 +0000

Querrás usar dir /a/s para que incluya todos los archivos, incluyendo los del sistema y los ocultos. Esto te dará el tamaño total que desees.

14
14
14
2016-12-07 17:10:59 +0000

Puedes usar PowerShell!

$totalsize = [long]0
Get-ChildItem -File -Recurse -Force -ErrorAction SilentlyContinue | % {$totalsize += $_.Length}
$totalsize

Esto se repite a través de todo el directorio actual (ignorando los directorios que no pueden ser introducidos) y resume los tamaños de cada archivo. Luego imprime el tamaño total en bytes.

Una línea compactada:

$totalsize=[long]0;gci -File -r -fo -ea Silent|%{$totalsize+=$_.Length};$totalsize

En mi máquina, esto parece un poco más rápido que un dir /s /a, ya que no imprime la información de cada objeto en la pantalla.

Para ejecutarlo desde una línea de comandos normal:

powershell -command "$totalsize=[long]0;gci -File -r -fo -ea Silent|%{$totalsize+=$_.Length};$totalsize"
7
7
7
2015-03-04 09:35:54 +0000

No hay tal comando incorporado en DOS o en la línea de comandos de Windows. En Linux, existe el comando du ( D esk U sage).

La línea de herramientas Sysinternals de Microsoft tiene una herramienta que es aproximadamente equivalente a du en Linux. También se llama du. ;)

2
2
2
2016-01-13 08:21:30 +0000

El tamaño de la carpeta se puede calcular con la siguiente secuencia de comandos:

@echo off
setlocal enabledelayedexpansion

set size=0
for /f "tokens=*" %%x in ('dir /s /a /b %1') do set /a size+=%%~zx
echo.!size!

endlocal
2
2
2
2016-02-15 12:14:54 +0000

Todavía puedes usar la utilidad de línea de comandos diruse.exe del Kit de Recursos de Windows 2000 disponible aquí: https://support.microsoft.com/en-us/kb/927229

Funciona en Windows 8.1 sin problemas.

1
1
1
2014-11-07 06:24:08 +0000

dir /s enumerará los tamaños de todos los archivos y los archivos de todas las subcarpetas

1
1
1
2019-03-07 22:38:22 +0000

Me doy cuenta de que esta pregunta pedía un análisis del tamaño del archivo usando CMD line. Pero si estás abierto a usar PowerQuery (Excel add-in, versions 2010+) entonces puedes crear un análisis de tamaño de archivo bastante convincente.

El siguiente script puede ser pegado en una consulta en blanco; lo único que necesitas hacer es añadir un parámetro llamado “paramRootFolderSearch” y luego añadir tu valor, como “C:\Users\bl0040\Dropbox\”. Usé esto como una guía: MSSQLTips: Recuperar tamaños de archivos del sistema de archivos usando Power Query .

Esta consulta me proporcionó los datos para crear una tabla pivote ([Folder Root]> [Folder Parent (1-2)], [Name]), y fui capaz de identificar algunos archivos que pude borrar que limpiaron mucho espacio en mi directorio.

Aquí está el script M de 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)"

Tamaños de archivos de carpetas_xlsx.png

Tamaños de archivos de carpetas_xlsx2.png

1
1
1
2019-12-07 07:30:53 +0000

Microsoft ofrece una herramienta llamada Disk Usage que crea un informe CSV.

Du (uso de disco) informa sobre el uso de espacio en disco para el directorio que usted especifique. Por defecto, recurre a los directorios para mostrar el tamaño total de un directorio y sus subdirectorios.

Así es como se usa:

Usage: du [-c[t]]] [-l | -n | -v] [-u] [-q] Parámetro Descripción

Donde las opciones son:

-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 salida del CSV está formateada como:

Path, CurrentFileCount, CurrentFileSize, FileCount, DirectoryCount, DirectorySize

Aquí está el actual enlace oficial.

0
0
0
2017-11-30 14:17:53 +0000

Sólo abre la carcasa de energía y haz un du -sh <directory> sin necesidad de instalar terceros o sistemas internos. Dentro de Power-shell puedes ejecutar algunos comandos simples de Linux como ls o du commands, algunos de los interruptores no funcionarán como ls -alt dará error ya que powershell no sabe qué es el -alt…

-2
-2
-2
2014-11-07 05:38:57 +0000

El comando “dir” proporciona el tamaño del archivo, la fecha y hora de la última modificación del directorio actual. Primero intenta moverte al directorio en el que deseas ver el tamaño usando el comando cd, luego usa el comando dir.

C:\>dir

Muestra el tamaño del archivo, la fecha y hora de la última modificación de todos los archivos y directorios en el directorio en el que estás actualmente, en orden alfabético.