中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-03 15:24
48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 高手指点一下,关于“%ComSpec% /cset=……”
可打印版本  1,128 / 7
第1楼 dove 发表于 2007-02-15 12:26
新手上路 发帖 5 积分 14
高手指点一下,关于“%ComSpec% /cset=……”
%ComSpec% /cset,=秋个好凉天道却,休还说欲,休还说欲&for,/l,%i,in,(18,-1,0)do,@call,set/p= %,:~%i,1%<nul&ping/n 1 127.1>nul


我在网上经常见到与上面类似的代码,将这段代码输入运行中就能逐个将汉字通过命令提示符显示出来。
我对32位控制台批处理的研究还处在起步阶段,想向高手讨教一下上面这段代码的运行原理,希望各位不吝赐教。
谢谢啦!
第2楼 slore 发表于 2007-02-15 13:02
铂金会员 发帖 2,478 积分 5,212
第3楼 dove 发表于 2007-02-15 13:41
新手上路 发帖 5 积分 14
原来早就有
不过,对于“set/p= %,:~%i,1%<nul”中的“%,:~%i,1%”解释得还是不够详细具体。
还是谢谢你!
第4楼 slore 发表于 2007-02-15 14:04
铂金会员 发帖 2,478 积分 5,212
变量,从%i位开始取,取一个长度的字符

如果a=qwert
q是第0位,w是第1位,e是第2位
%a:~2,1%返回的是e
第5楼 dove 发表于 2007-02-15 14:16
新手上路 发帖 5 积分 14
恩,应该是这么回事
可是请问您是从哪知道关于“%a:~2,1%”的解释的?
可能是我见识短,我以前从没见过这种写法
windows的帮助里有吗?
第6楼 redtek 发表于 2007-02-15 21:05
金牌会员 发帖 1,147 积分 2,902
关于 “%a:~2,1%” 原理的解释在 SET 命令中:)
执行 SET /? 可以看到详尽的解释。


另: SET /?
   IF /?
   FOR /?

几乎最常用的一些参数一般不需要或不太可能都能背下来,其实只要记住上面3个命令,用的时候 /? 加上帮助的参数,这样就可随查所需:)

(只要记住上面3个命令和随时查看它们的帮助信息-大约了解哪些应用出自哪个命令就行啦,这也是自我了然的学习捷径:)
第7楼 htysm 发表于 2007-02-15 22:29
高级用户 发帖 415 积分 866
高手呀。
第8楼 zqz0012005 发表于 2007-03-08 04:34
中级用户 发帖 135 积分 297
命令 /? 是永远的老师!
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023