要列出那个盘,放在那个盘的根目执行即可,最好>>至TXT文档

程序也不多解释,大家一看就明白,只是把别人的东西组合在一起,调用方法:

一:双击执行,根据提示输入您需要建设的文件夹路径。

二:开始--运行--cmd,然后找到存放bat文件的地方,直接输入bat文件名就可以执行。

三:也可以直接输出到文件,例如:C:\>f3.bat>111.txt回车之后就只能看到光标一闪一闪的,这时你直接输入文件夹路径就可以了。

  说明:如果采用输出到文件的形式,最后把代码最后的pause行(暂停代码)删除,这样当程序执行完后会自动退出,不会一直停留在程序里。

@echo off
setlocal enabledelayedexpansion
echo.
set /p dirPath=please input folder path:
echo %dirPath%
echo.
for /d %%a in (%dirPath%\*) do (
    set/a zz=0
    for /f "tokens=3 delims= " %%t in ('dir /s /a /-c "%%a" ^|findstr 个文件') do (
    set zz=%%t
    )    
set d=bit
if !zz! GEQ 1024 set /a "z1=!zz!>>10"&set d=KB
if !z1! GEQ 1024 set /a "z2=!z1!>>10"&set d=KB
if !z2! GEQ 1024 set /a "z3=!z2!>>10"&set d=KB
echo 文件夹:%%a ,大小是:!z3!GB = !z2!MB = !z1!!d!
)
for /f "tokens=1-4 delims= " %%i in ('dir /a /-c %dirPath% ^|findstr 个文件') do (
    set/a ss=%%k
    set/a ss>>=10,d=bit
    
    if !ss! GEQ 1024 set /a "s1=!ss!>>10"&set d=KB
    if !s1! GEQ 1024 set /a "s2=!s1!>>10"&set d=KB
    if !s2! GEQ 1024 set /a "s3=!s2!>>10"&set d=KB
    echo 在"%dirPath%"根目录下有 %%i %%j ,总共大小为:!s3!GB = !s2!MB = !s1!!d!
    )

pause