联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
@echo off & setlocal EnableDelayedExpansion for %%d in (c d e f g h i j k l m n o p q r s t u v w x y z) do ( if exist %%d:\nul ( for /f "tokens=3" %%z in ('dir /-c %%d:\') do set freesize=%%z set /a freesize=!freesize:~0,-3!/1049>nul set freesize= !freesize! set freesize=!freesize:~-9! echo %%d 盘剩余空间:!freesize! MB ) ) pause
@echo off cls color 2e title 各分区剩余空间情况 echo. echo. echo ╔══════════════════════════════╗ echo ║ 磁盘分区 磁盘卷标名 剩余空间(MB) ║ echo ║ _____________________________________________________ ║ setlocal enabledelayedexpansion for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do ( if exist %%a:\nul ( for /f "tokens=3" %%b in ('dir /-c %%a:\^|find "可用字节"') do ( set freesize=%%b set /a freesize=!freesize:~0,-3!/1049>nul 2>nul set freesize= !freesize! set freesize=!freesize:~-7! for /f "tokens=4" %%c in ('vol %%a:') do set volume=%%c set volume= !volume! set volume=!volume:~-20! echo ║ %%a: !volume! !freesize! ║ ) ) ) echo ╚══════════════════════════════╝ pause>nul
附件 1: error1.jpg (2006-6-11 20:08, 37.38 K, 下载附件所需积分 1 点 ,下载次数: 2)
@echo off & setlocal EnableDelayedExpansion color 2e title 各分区剩余空间情况 echo. echo. echo ╔══════════════════════════════╗ echo ║ 磁盘分区 磁盘卷标名 剩余空间(MB) ║ echo ║ _____________________________________________________ ║ for %%d in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do ( if exist %%d:\nul ( for /f "tokens=3" %%z in ('dir /-c %%d:\') do set freesize=%%z set /a freesize=!freesize:~0,-3!/1049>nul set freesize= !freesize! set freesize=!freesize:~-9! for /f "tokens=3*" %%v in ('vol %%d:') do set volume=%%w echo.!volume!>_volume.tmp for %%f in (_volume.tmp) do for /l %%v in (%%~zf,1,20) do set volume= !volume! echo ║ %%d: !volume! !freesize! ║ ) ) echo ╚══════════════════════════════╝ if exist _volume.tmp del _volume.tmp pause
Originally posted by electronixtar at 2006-9-19 08:56: 寒~~现在动不动都WMIC的~~
Originally posted by willsort at 2006-6-11 18:54: Re namejm: 可惜没有Win2000的环境,无法测试,对症的解法需要你详细说明错误信息。 目前,我能想到的办法就是取消find,在CMD@WinXP下测试栮..
for /f "skip=4 tokens=4 delims=, " %%a in ('defrag c: -a') do (set /a freesize=%%a*1024) pause
for /f "skip=4 tokens=4 delims=, " %%a in ('defrag d: -a') do echo %%a>ok.txt for /f "tokens=1* delims=." %%a in (ok.txt) do set /a ok=%%a*1024+%%b*1024/100 echo %OK% pause
@echo off set /p mydisk=请你输入要查询的磁盘(如E:): for /f "skip=4 tokens=4 delims=, " %%a in ('defrag %mydisk% -a') do set dftemp=%%a for /f "tokens=1* delims=." %%a in ("%dftemp%") do set /a diskfree=%%a*1024+%%b*1024/100 echo %mydisk%的剩余空间为:%diskfree%MB pause