除以1024得到其KB单位的大小 当心溢出
- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir /b /a-d *.txt') do (
- set str=%%~zi
- if %%~zi lss 1024 (set k=字节&set z=%%~zi)else set k=KB&call :lp
- call echo %%~fi !z! !K!
- set z=&set n=&set l=
- )
- pause&exit
- :lp
- set/a l=%l%%str:~,1%%%1024,s=%l%%str:~,1%/1024
- if %z%#==0# set z=
- set z=%z%%s%
- set str=%str:~1%
- if defined str goto lp
- set z=%z%.
- :lp1
- set/a l*=10,s=l/1024,n+=1
- if %n% lss 3 (
- set z=%z%%s%
- set/a l=l%%1024
- goto lp1
- )
复制代码
[ 本帖最后由 terse 于 2008-10-9 16:37 编辑 ] |