循环完成后 FOR 循环恢复执行 - DOS(Windows 命令行)
Posted
技术标签:
【中文标题】循环完成后 FOR 循环恢复执行 - DOS(Windows 命令行)【英文标题】:FOR loop resume execution after loop complete - DOS (Windows Command line) 【发布时间】:2015-06-20 20:52:03 【问题描述】:在本网站贡献者的大力帮助下,我使用 DOS 命令编写了一个 FOR 循环,这样使用 FOR 命令的一个批处理文件 (Fred) 使用其他命令执行第二个批处理文件 (Barney) 以复制模板文件 (如下)
弗雷德.bat:
REM Call Barney.bat to run the copy file command in Barney three times
for /l %%i in (1,1,3) DO Barney.bat %%i
REM now make another copy
copy wilma3.txt to wilma4.txt
巴尼.bat:
REM make %i-th copy of the file fred.txt as wilma%i.txt
copy fred.txt wilma%1.txt
这两个文件(Fred 和 Barney)可以很好地根据需要创建三个副本(wilma1.txt、wilma2.txt 和 wilma3.txt)。但是,一个三个副本的焦点似乎没有返回到第一个批处理文件(Fred),所以可以执行“将 wilma3.txt 复制到 wilma4.txt”这一行吗?有没有办法产生这个结果?也许我应该只在一个批处理文件而不是两个文件中进行循环复制?
【问题讨论】:
【参考方案1】:是的,您可以在一个 bat 文件中执行此操作,但我假设这只是一个示例,您有理由想要调用第二个 bat。要在 for 循环之后继续执行 Fred,您需要使用:...) do call Barney.bat %%i
【讨论】:
通过一些实验,我发现一个批处理文件足以完成 Fred.bat 包含行 ...) for /l %%i in (1,1,3) DO (copy fred.txt wilma%%i.txt)以上是关于循环完成后 FOR 循环恢复执行 - DOS(Windows 命令行)的主要内容,如果未能解决你的问题,请参考以下文章
jquery问题,$.ajax在for循环里,如何控制完成success函数后再执行下一条循环?