联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
@echo off for /f "tokens=2 delims==" %%a in ('wmic LogicalDisk where "DriveType='2'" get * /value ^| findstr /i "^size"') do set total=%%a set /a half=total/2 echo U盘总容量: %total% echo U盘总容量的一半: %half%
Originally posted by zh159 at 2008-5-12 09:56 AM: XP SP2 4GB U盘 U盘总容量: 4035407872 U盘总容量的一半: 1073741823 测试总容量正确,总容量的一半出错
@echo off for /f "tokens=2 delims==" %%a in ('wmic LogicalDisk where "DriveType='2'" get * /value ^| findstr /i "^size"') do set total=%%a echo U盘总容量: %total% >"%tmp%\cacl.vbs" echo a=%total% >>"%tmp%\cacl.vbs" echo b=a/2 >>"%tmp%\cacl.vbs" echo wscript.echo b for /f %%a in ('cscript /nologo "%tmp%\cacl.vbs"') do echo U盘总容量的一半: %%a del /q "%tmp%\cacl.vbs"
Originally posted by paidui598 at 2008-5-12 10:10 AM: 求助HAT,如果想获得其它盘的空间大小,应该如何写呢
Originally posted by HAT at 2008-5-12 12:46 PM: 其它盘是指整个硬盘?还是硬盘的某个分区?还是两个或多个U盘中的某一个?还是移动硬盘?
Originally posted by HAT at 2008-5-12 12:45: 批处理能够直接的计算的数值上限是2^31 调用VBS计算一下就行了 zh159 兄再测试一下这个? [code]@echo off for /f "tokens=2 delims==" %%a in ('wmic Logi ...
@echo off for /f "tokens=2 delims==" %%a in ('wmic LogicalDisk where "DriveType='2'" get * /value ^| findstr /i "^size"') do set total=%%a echo U盘总容量: %total% >"%tmp%\cacl.vbs" echo wscript.echo %total%/2 for /f %%a in ('cscript /nologo "%tmp%\cacl.vbs"') do echo U盘总容量的一半: %%a del /q "%tmp%\cacl.vbs"
Originally posted by paidui598 at 2008-5-12 01:01 PM: 是指硬盘的一个分区,比如求D盘空间大小的一半,再次感谢HAT
@echo off for /f "tokens=2 delims==" %%a in ('wmic LogicalDisk where "DeviceID='D:'" get * /value ^| findstr /i "^size"') do set total=%%a echo D盘总容量: %total% >"%tmp%\cacl.vbs" echo wscript.echo %total%/2 for /f %%a in ('cscript /nologo "%tmp%\cacl.vbs"') do echo D盘总容量的一半: %%a del /q "%tmp%\cacl.vbs"
Originally posted by HAT at 2008-5-12 08:37 PM: [code]@echo off for /f "tokens=2 delims==" %%a in ('wmic LogicalDisk where "DeviceID='D:'" get * /value ^| findstr /i "^size"') do set total=%%a echo D盘总容量 ...