【问题标题】:How to create a .bat loop that creates a new cmd window and runs a different loop/function?如何创建一个 .bat 循环来创建一个新的 cmd 窗口并运行不同的循环/功能?
【发布时间】:2015-07-04 09:59:43
【问题描述】:
我有以下代码:
set cont=3
:window
start segredo.bat
if %cont% equ 0 goto windowend
set /a cont=cont-1
goto window
:windowend
:loopstart
echo spam
goto loopstart
:loopend
我的目标是打开 3 个 cmd 窗口并在每个窗口中运行 echo spam 循环。相反,它会在不运行 loopstart 的情况下开始打开无限的 cmd 窗口。我是蝙蝠语言的新手,有没有人可以帮助我?
【问题讨论】:
标签:
windows
batch-file
cmd
【解决方案1】:
for /l %%a in (1 1 3) do start "" cmd /q /c"for /l %%b in (0) do echo spam"
由内而外
- 执行
echo 需要一个无限循环,因此使用简单的数字for /l 循环。只是一个“以 0 为步长从 0 迭代到 1”,一个 for /l %%b in (0 0 1) 但缩写。
- 由于需要三个单独的实例,因此该命令放置在
cmd 实例中
- 我们使用附加数字
for /l 循环到 start 每个 cmd 实例。为防止命令出现问题,由于 start 命令将第一个带引号的参数作为窗口标题处理,因此包含了一对空引号。
【解决方案2】:
将start segredo.bat 替换为call segredo.bat。