Tomados from here:
El siguiente comando encuentra carpetas º al son mayores de 100 MB de tamaño en la unidad D::
diruse /s /m /q:100 /d d:
opción/s causa subdirectorios que deba ser registrado el uso del disco opción muestra/m en megabytes, el/q: 100 opción hace que las carpetas que se deben marcar más de 100 MB, y la opción/d muestra solo carpetas que superan el umbral especificado por/q.
Utilice el comando diskuse para buscar archivos de un cierto tamaño. El siguiente comando muestra los archivos de más de 100 MB de tamaño en la unidad D::
diskuse D: /x:104857600 /v /s
El/x: opción 104857600 causa que los archivos más de 104,857,600 bytes para ser mostradas y sólo es válido si se incluye la opción/v (detallado) La opción/s significa que se buscan los subdirectorios de la ruta especificada (en este caso, el disco D: drive).
con VBScript
' This code finds all files over a certain size.
' ------ SCRIPT CONFIGURATION ------
strComputer = "**<ServerName>**"
intSizeBytes = 1024 * 1024 * 500 ' = 500 MB
' ------ END CONFIGURATION ---------
set objWMI = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
set colFiles = objWMI.ExecQuery _
("Select * from CIM_DataFile where FileSize > '" & intSizeBytes & "'")
for each objFile in colFiles
Wscript.Echo objFile.Name & " " & objFile.Filesize/1024/1024 & "MB"
next
Nota, esto solo funcionará para un archivo.Si desea poder pasar una máscara para obtener los tamaños de varios archivos, cambie la segunda línea a algo como 'para %% I en (% 1) do @echo %% ~ znI'. –
@Mike, pero ¿cuál es el comando para contar la cantidad de bytes de la salida estándar canalizada? (a diferencia del archivo guardado) – Pacerier
@Pacerier, no estoy seguro de si es posible usar este método. Las variables% ~ z se refieren específicamente a un archivo pasado como argumento, por lo que buscarán sus valores del sistema de archivos, en lugar de una secuencia dinámica de bytes. –