中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-06 21:48
48,039 主题排行 / 350,124 发帖 / 今日 0 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助] 获得U盘自由空间后如何赋值及对比容量?
可打印版本  700 / 6
第1楼 chishingchan 发表于 2007-12-16 13:40
银牌会员 发帖 538 积分 1,284
[求助] 获得U盘自由空间后如何赋值及对比容量?
获得U盘自由空间命令:
wmic logicaldisk where Description="可移动磁盘" get FreeSpace
显示结果:
FreeSpace
20615168

问1:如何将20615168赋值给FreeSpace?则set FreeSpace=20615168
问2:例如我所需的空间是22222222,如何对比并说明空间不足?
第2楼 chishingchan 发表于 2007-12-16 14:01
银牌会员 发帖 538 积分 1,284
刚才测试:
C:\>wmic logicaldisk where Description="可移动磁盘" get FreeSpace /value


FreeSpace=20615168

问题同顶楼
第3楼 chishingchan 发表于 2007-12-16 14:11
银牌会员 发帖 538 积分 1,284
for /f "skip=2 delims== tokens=1,2" %%a in ('wmic logicaldisk where Description="可移动磁盘" get FreeSpace /value^|findstr "FreeSpace"') do @set %%a=%%b
可移动磁盘 - 无效别名动词。

出错了,快来救我啊!
第4楼 chishingchan 发表于 2007-12-16 14:29
银牌会员 发帖 538 积分 1,284
自救成功!

像头蛮牛乱冲乱撞,测试n次终于搞定,都是搜索的帮助!

发了这么多贴了,请版主勿怪,确实没有灌水的嫌疑!只怪本人技术有限及没耐心!
第5楼 Climbing 发表于 2007-12-16 19:48
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
for /f "tokens=*" %%i in ('wmic logicaldisk where Description^="可移动磁盘" get FreeSpace /value^|find "="') do set %%i

这样更简洁一些。
第6楼 chishingchan 发表于 2007-12-16 21:36
银牌会员 发帖 538 积分 1,284
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=*" 更简洁
第7楼 Climbing 发表于 2007-12-16 23:13
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
继续精简。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023