Recipe 3.14. Finding Large Files and Folders on a VolumeProblemYou want to find files or folders t hat exceed a certain size on a volume. SolutionUsing a graphical user interface
Using a command-line interfaceThe following command finds folders that are greater than 100 MB in size on the D: drive: > diruse /s /m /q:100 /d d: The /s option causes subdirectories to be searched, the /m option displays disk usage in megabytes, the /q:100 option causes folders that are greater than 100 MB to be marked, and the /d option displays only folders that exceed the threshold specified by /q. Use the diskuse command to find files over a certain size. The following command displays files over 100 MB in size on the D: drive: > diskuse D: /x:104857600 /v /s The /x:104857600 option causes files over 104,857,600 bytes to be displayed and is valid only if you include the /v option (verbose). The /s option means subdirectories from the specified path (in this case, the D: drive) are searched. Using 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 DiscussionIf you find that you are running out of space on a volume and want to see what is consuming the most space, you are better off using the diruse command-line solution. With the other solutions, you could search for all files over 100 MB, for example, but a user could have created a bunch of 10 MB MPEG files. Unfortunately, you can't use the Search dialog box or VBScript to search on folder sizes, which leaves diruse as the most appropriate tool in this scenario. See AlsoRecipe 3.7 and MSDN: CIM_DataFile |