2010-12-23 121 views
7

我在Vista机器上遇到空间问题,需要弄清楚占用了太多空间。返回文件夹大小的批处理文件

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

dir命令不会返回文件夹大小。

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

+0

不知道如何那样做,但是你可以运行一个应用程序吗? – ewanm89 2010-12-23 13:52:42

+0

只要我不需要管理员权限,我就可以运行一个应用程序。 – 2010-12-23 14:00:58

+1

Windirstat可以在适当的位置运行,您需要通过安装程序在他们具有管理员权限的计算机上安装(只会导致安装程序请求它们)。但是,只需复制exe并在需要的地方运行即可。 – ewanm89 2010-12-23 14:15:24

回答

7

我会看看这个线程的一些线索,如何实现目录的大小:

Batch File To Display Directory Size

否则:

dirsize:

@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 

AllDirSize:

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

这是从优秀的理查德·毕晓普测试论坛采取:http://www.bish.co.uk/forum/index.php?topic=58.0

相关问题