标题: 关于shift,call~!比较实用的问题……
[打印本页]
作者: jun19841
时间: 2007-10-17 15:43
标题: 关于shift,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 shift >>u.bat
echo goto loop >>u.bat
call u.bat %Num%
pause
只能 通过CALL 来完成,麻烦哪位 牛 插 的 ……出来亮亮相哦!!
不用call直接完成这个循环~!
:o
作者: lxmxn
时间: 2007-10-17 21:24
去掉call不就是了?
另外,你的程序进入死循环了。
作者: jun19841
时间: 2007-10-18 13:48
首先 感谢 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
作者: jun19841
时间: 2007-10-18 13:49
被调入的 bat 跟直接执行的 似乎还是有点区别
作者: 不得不爱
时间: 2007-10-18 14:28
看下面的代码没有用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%
作者: jun19841
时间: 2007-10-19 08:26
也 只能 这样了呵呵~ 谢了 ~ 不得不爱 &&lxmxn
作者: 106942397
时间: 2008-4-26 15:56
看不懂有什么区别?