中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-08 15:56
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 关于shift,call~!比较实用的问题…… 查看 902 回复 6
楼 主 关于shift,call~!比较实用的问题…… 发表于 2007-10-17 15:43 ·  中国 浙江 台州 电信
初级用户
积分 55
发帖 29
注册 2006-04-11 16:40
20年会员
UID 53669
性别 男
来自 亚洲
状态 离线
@echo off
set Num=1 2 3 4 5 6 7 8 9
echo @echo off >>u.bat
echo set Num=%%1 >>u.bat
echo :loop >>u.bat
echo echo %%1 >>u.bat
echo echo. >>u.bat
echo pause >>u.bat
echo shift >>u.bat
echo goto loop >>u.bat
call u.bat %Num%
pause

只能 通过CALL 来完成,麻烦哪位 牛 插 的 ……出来亮亮相哦!!
不用call直接完成这个循环~!
:o
2 发表于 2007-10-17 21:24 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
去掉call不就是了?
另外,你的程序进入死循环了。
3 发表于 2007-10-18 13:48 ·  中国 浙江 台州 电信
初级用户
积分 55
发帖 29
注册 2006-04-11 16:40
20年会员
UID 53669
性别 男
来自 亚洲
状态 离线
首先 感谢 lxmxn 先
如果 去掉call 就得不到 结果了 只显示%1额~
有点 糊了,
@echo off
set Num=1 2 3 4 5 6 7 8 9
echo @echo off >>u.bat
echo set Num=%%1 >>u.bat
echo :loop >>u.bat
echo echo %%1 >>u.bat
echo echo. >>u.bat
echo pause >>u.bat
echo if %%1==9 goto end >>u.bat
echo shift >>u.bat
echo goto loop >>u.bat
echo :end >>u.bat
echo exit >>u.bat
call u.bat %Num%
pause
4 发表于 2007-10-18 13:49 ·  中国 浙江 台州 电信
初级用户
积分 55
发帖 29
注册 2006-04-11 16:40
20年会员
UID 53669
性别 男
来自 亚洲
状态 离线
被调入的 bat 跟直接执行的 似乎还是有点区别
5 发表于 2007-10-18 14:28 ·  中国 四川 南充 电信
超级版主
★★★★
我爱DOS
积分 5,310
发帖 2,044
注册 2005-09-26 12:00
20年会员
UID 42843
性别 男
来自 四川南充
状态 离线
看下面的代码没有用CALL, 效果是一样的吧
@echo off
set Num=1 2 3 4 5 6 7 8 9
echo @echo off>u.bat
echo set Num=%%1>>u.bat
echo :loop>>u.bat
echo echo %%1>>u.bat
echo echo.>>u.bat
echo pause >>u.bat
echo if %%1==9 goto end>>u.bat
echo shift>>u.bat
echo goto loop>>u.bat
echo :end>>u.bat
u.bat %Num%
6 发表于 2007-10-19 08:26 ·  中国 浙江 台州 电信
初级用户
积分 55
发帖 29
注册 2006-04-11 16:40
20年会员
UID 53669
性别 男
来自 亚洲
状态 离线
也 只能 这样了呵呵~ 谢了 ~ 不得不爱 &&lxmxn
7 发表于 2008-04-26 15:56 ·  中国 广东 江门 蓬江区 电信
初级用户
积分 29
发帖 15
注册 2008-04-23 20:23
18年会员
UID 116742
性别 男
状态 离线
看不懂有什么区别?
论坛跳转: