中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-07 08:05
48,040 主题排行 / 350,125 发帖 / 今日 0 篇 / 48,252 会员排行
DOS批处理 & 脚本技术(批处理室) » [求助] 如何使"%~ZI"显示的结果以MB为单位
可打印版本  826 / 4
第1楼 userwww 发表于 2008-01-19 19:18
初级用户 发帖 57 积分 136
[求助] 如何使"%~ZI"显示的结果以MB为单位
如何使"%~ZI"显示的结果以MB为单位
第2楼 qzwqzw 发表于 2008-01-19 19:57
银牌会员 发帖 636 积分 2,343
用set截取掉后6位后*1000/1048即得到对应MB值
第3楼 userwww 发表于 2008-01-19 22:05
初级用户 发帖 57 积分 136
我现在的代码是这样的,怎么用 SET 截取呢,不知从何下手,能再说详细点吗? 谢谢
for /f "tokens=2 delims=+" %%i in (电影.txt) do for /f "delims=" %%a in ('dir/s/b "%%i.3GP"') do echo %%a %%~za MB>>a.txt
第4楼 qzwqzw 发表于 2008-01-20 00:42
银牌会员 发帖 636 积分 2,343
在for里面用下面的代码,需要启用变量延迟
set size=%%~za
set /a size=!size:~0,-6! * 1000 / 1048
echo !size! MB
第5楼 userwww 发表于 2008-01-21 21:42
初级用户 发帖 57 积分 136
不熟变量设置,试了好多次才行,加一行就可以用了,谢谢你

setlocal EnableDelayedExpansion
set size=%%~za
set /a size=!size:~0,-6! * 1000 / 1048
echo %%~na !size! MB
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023