笨办法也是老办法了- @echo off&setlocal enabledelayedexpansion
- set Md=1048576&set "name=c:"
- for /l %%i in (1 1 9) do set /aNum%%i=MD*%%i&set "Num%%i=0!Num%%i!"
- for /f "skip=1" %%a in ('wmic logicaldisk where "name='%name%'" get Size') do (
- set "Size=0%%a00"
- set S=!Size!&set Line=0
- for %%i in (16 8 4 2 1) do if "!s:~%%i!" neq "" set/a Line+=%%i&set "S=!S:~%%i!"
- set "str=!Size:~1,7!"
- if !str! lss !MD! (set i=8)else set i=7&set "str=!Size:~,7!"
- for /l %%i in (1 1 9) do set s=!s:%%i=0!
- for /l %%i in (!i! 1 !Line!) do (
- set "str=!s!!str!!Size:~%%i,1!"
- set "str=!str:~-8!"
- if !str! geq !Num1! (
- set N=1
- for /l %%j in (2 1 9) do if "!str!" geq "!Num%%j!" set "N=%%j"
- set "G_Size=!G_Size!!N!"
- for %%j in (!N!) do set /a "str=3!str!-1!Num%%j!"
- set str=!str:~1!
- ) else set "G_Size=!G_Size!0"
- )
- echo %name% !G_Size:~,-2!.!G_Size:~-2! [M]
- )
- pause
复制代码
|