中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-26 00:34
47,812 主题排行 / 349,910 发帖 / 今日 0 篇 / 48,264 会员排行
DOS批处理 & 脚本技术(批处理室) » 求所有分区剩余空间的精确值(以MB为单位)
可打印版本  2,458 / 4
第1楼 namejm 发表于 2007-03-11 13:14
荣誉版主 发帖 1,737 积分 5,226 来自 成都
求所有分区剩余空间的精确值(以MB为单位)
  通过 dir 命令获取剩余空间的字节数字之后,转换成以MB为单位的数值,往往容易受到CMD不能处理超过 2^31-1 的数值的限制,从而难以直接把字节数转换为MB,以下代码模拟手工计算整数相除的过程,顺利地解决了这一难题:

  更多信息,可以参考这个帖子:如何显示磁盘的剩余空间?

  发现 call echo 中的 call 属于多余的命令,精简一下;判断某个分区是否存在,在 for 语句中可以不用 if exist 语句,直接用 dir %%i 2>nul 的格式就可以了,再精简一下。

  经 boy0750 提醒,发现某分区被使用0字节的时候, dir /-c %%i:\ 会提取不到可用字节数,改成 dir /a /-c %%i:\ 之后,此问题得到部分解决(当分区不存在任何文件的时候,提取不到剩余空间的字节数,目前只能做提示)。感谢 boy0750 的提醒。

[ Last edited by namejm on 2007-8-12 at 03:18 AM ]
第2楼 lxmxn 发表于 2007-03-11 13:29
版主 发帖 4,938 积分 11,386

  版主牛X啊,佩服……
第3楼 zh159 发表于 2007-03-11 14:55
金牌会员 发帖 1,467 积分 3,687
来个BAT+VBS的

使用延迟变量:


不使用延迟变量:
第4楼 vkill 发表于 2007-03-12 08:25
金牌会员 发帖 1,744 积分 4,103 来自 甘肃.临泽
win2003里到有几个好命令的

freedisk

diskpart
第5楼 nicesoft 发表于 2007-05-01 18:22
初级用户 发帖 47 积分 98
请教,我只想把D盘的剩余空间存入一个变量中,该怎样写?谢谢
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023