【问题标题】: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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-04-05
      • 1970-01-01
      • 2022-07-12
      • 1970-01-01
      • 2021-08-11
      • 1970-01-01
      • 1970-01-01
      • 2011-09-22
      相关资源
      最近更新 更多