【问题标题】:Looping a batch file command a certain amount of times循环批处理文件命令一定次数
【发布时间】:2018-10-02 18:04:34
【问题描述】:

我对此进行了研究。我已经在这个地方搜索了一个解决方案,但我一直在寻找奇怪的长行代码,我认为这些代码是不必要的。 我试图让批处理文件循环我的命令 5 次。

    :loop
    start Node_B7
    goto loop %5%

这是我希望它启动 Node_B7 5 次的代码行。我试过了

    :loop
    start Node_B7
    goto loop

虽然它可以无限次执行,但它仍然有效。如果这是一个简单的问题,我是编码新手,很抱歉。我知道使用 VBS 你可以循环一定次数,所以我相信你可以用批处理文件来做到这一点。请不要告诉我只使用 VBS,因为我不想使用 VBS。我在这个批处理文件中的其他命令(不包括循环)在 VBS 中不起作用。

【问题讨论】:

  • 要么使用计数器并检查它的值Set /a cnt+=1if %cnt% lss 6 goto :loop,要么使用for /l %%i in (1,1,5) Do start Node_B7
  • 使用计数器变量。首先在循环外初始化它set counter=0,然后在循环的顶部set counter+=1,然后是if %counter% equ 5 goto :EOF
  • @Annonymous,你应该接受 Squashman 的回答,这是正确的。

标签: batch-file


【解决方案1】:

一个简单的FOR 命令并使用/L 选项。

FOR /L %%G IN (1,1,5) DO start Node_B7

【讨论】:

  • 感谢您,这对您有很大帮助。我也想知道,你可以使用类似的代码行在批处理文件中循环一定次数的命令吗?
【解决方案2】:

help gotohelp set 将助您一臂之力:

@echo off
set counter=0
:loop
if %counter% equ 5 goto :EOF
set /a counter+=1
echo %counter%
goto loop

壁球手的循环更好。

【讨论】:

  • @squahman,数一下,0、1、2、3、4。这是五次迭代。在编程中很难做到三件事;命名事物,并避免一个接一个的错误;)
  • OP 正在寻找类似“类似代码行”的东西。我想我会展示一个替代方案。就个人而言,我给了@Squashman 我的投票。但是谁给了我赞成票,谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-25
  • 2011-08-23
  • 2013-10-08
相关资源
最近更新 更多