标题: [求助] 获得U盘自由空间后如何赋值及对比容量?
[打印本页]
作者: chishingchan
时间: 2007-12-16 13:40
标题: [求助] 获得U盘自由空间后如何赋值及对比容量?
获得U盘自由空间命令:
wmic logicaldisk where Description="可移动磁盘" get FreeSpace
显示结果:
FreeSpace
20615168
问1:如何将20615168赋值给FreeSpace?则set FreeSpace=20615168
问2:例如我所需的空间是22222222,如何对比并说明空间不足?
作者: chishingchan
时间: 2007-12-16 14:01
刚才测试:
C:\>wmic logicaldisk where Description="可移动磁盘" get FreeSpace /value
FreeSpace=20615168
问题同顶楼
作者: chishingchan
时间: 2007-12-16 14:11
for /f "skip=2 delims== tokens=1,2" %%a in ('wmic logicaldisk where Description="可移动磁盘" get FreeSpace /value^|findstr "FreeSpace"') do @set %%a=%%b
可移动磁盘 - 无效别名动词。
出错了,快来救我啊!
作者: chishingchan
时间: 2007-12-16 14:29
自救成功!
@echo off
for /f "tokens=2 delims==" %%i in ('wmic logicaldisk where Description^="可移动磁盘" get FreeSpace /value^|find "="') do set FreeSpace=%%i
echo %FreeSpace%
if %FreeSpace% lss 22222222 echo 空间不足
if %FreeSpace% gtr 22222222 echo 空间充足
pause
像头蛮牛乱冲乱撞,测试n次终于搞定,都是搜索的帮助!
发了这么多贴了,请版主勿怪,确实没有灌水的嫌疑!只怪本人技术有限及没耐心!
作者: Climbing
时间: 2007-12-16 19:48
for /f "tokens=*" %%i in ('wmic logicaldisk where Description^="可移动磁盘" get FreeSpace /value^|find "="') do set %%i
这样更简洁一些。
作者: chishingchan
时间: 2007-12-16 21:36
Originally posted by Climbing at 2007-12-16 07:48 PM:
for /f "tokens=*" %%i in ('wmic logicaldisk where Description^="可移动磁盘" get FreeSpace /value^|find "="') do set %%i
这样更简洁一些。
把这个去掉 "tokens=*" 更简洁
作者: Climbing
时间: 2007-12-16 23:13
继续精简。