7

我的 Vista 机器上有空间问题,需要弄清楚是什么占用了这么多空间。

我想编写一个简单的批处理文件,返回 C: 下的所有文件夹以及每个文件夹的大小。

dir命令似乎没有返回文件夹大小。

不幸的是,我们没有管理员权限,也无法安装第三方应用程序,而且我们组中的其他用户也需要此信息。

4

2 回答 2

7

我将查看此线程以获取有关如何实现目录大小的一些线索:

显示目录大小的批处理文件

除此以外:

目录大小:

@echo off
setLocal EnableDelayedExpansion
set /a value=0
set /a sum=0
FOR /R %1 %%I IN (*) DO (
set /a value=%%~zI/1024
set /a sum=!sum!+!value!
)
@echo %CD%:!sum! k

所有目录大小:

echo off
set WORKING_DIRECTORY=%cd%
    for /f "delims=" %%a in ('dir /a:D /D /B /S') do (  
            echo off
            cd %%a
            "%WORKING_DIRECTORY%"\dirsize "%%a"
            cd %WORKING_DIRECTORY%
) 

用它:ALLDIRSIZE > C:\temp\FileContainingFolderSizes.txt

摘自优秀的 Richard Bishop 测试论坛:http ://www.bish.co.uk/forum/index.php?topic=58.0

于 2010-12-23T14:00:19.427 回答
5

不完全回答您的问题,但如果您有 GUI 访问权限,我建议使用 TreeSize: http ://www.jam-software.com/freeware/index.shtml

如果您更喜欢命令行,请使用 Unix utils 中的 du 命令:http: //unxutils.sourceforge.net/

于 2010-12-23T13:53:26.770 回答