一、批处理for 同时 循环
1、 1没有你说的这种功能,只能是for命令里套for命令其运行很象时针和分针走的情况,分针走一圈,时针走一格
2、 2当然你可以用命令,想办法控制它每轮里层for循环仅一次是有实质性动作的,其它是空循环
3、 3实际上如果需要用到这种情况就不会去设置两个for来循环了,因为两for循环的变量的变化情况是完全相关的,就象你举的例子,%%b=10-%%a如果你不会整理这种关系且正确表为代码,则是另外一回事,需要加强“基本功”
4、 4实际问题编程时,如能找到如网友“暗流在汹涌”说的方法则极大简化代码且加快运行速度
二、批处理for /l
1、查看命令行就知道了,解释如下:
2、 FOR/L%variable IN(start,step,end) DO command
3、该集表示以增量形式从开始到结束的一个数字序列。
4、所以“/l”参数表示按某个规律输出数字序列。
5、对于第一个问题,外层循环的(1,1,5)表示从1开始,每次以步长为1递增,将值赋给变量%%n,直到%%n为5的时候结束。内层循环表示从1开始,以步长1递增到当前%%n的值为止,所以输出
6、注意第二个问题的内层循环for没有参数“/l”,当无该参数时,for的作用是枚举括号内的数字,
7、即让%%j依次等于1, 1, 2,外层循环每执行一次就会输出%%n 1,%%n 2,%%n 3。
三、批处理 for 加 find 命令
1、既然不是象有人提问为了解决某一实际问题而是在练习批处理或者说命令,我就不就具体写这代码了,对于for/f命令,既然in后面的集是一个命令形成的,那么,你应当在命令行把这个命令输出看一看比如 find"春天"*.txt看它显示的是什么结果。
2、对for/f而言,最终是按in后面的括号里形成的文本(无论是命令集、文件集,还是字符串集;也无论是单行的还是多行的)总是按这文本每行执行一次do后面的命令的,如果无法实现你预期结果,那就或是改变前面in集的内容,或是改变do后的命令,总之是要熟悉可能用到的命令才能在for命令里把它顺利实现。
3、所以,如要用的命令没把握,就应当在命令行,单独去体验这命令,这样分解开来测试没问题了,组合到for命令里也就水到渠成了。另外建议到网上多看些实例。
END,本文到此结束,如果可以帮助到大家,还望关注本站哦!