while循环(或阻止)直到在批处理脚本中生成文件

时间:2014-05-23 09:13:12

标签: windows batch-file

我有一个批处理文件,因为我想阻止直到生成一个文件。我在bash script上有一个示例脚本。我们如何在批处理脚本中做同样的事情。

1 个答案:

答案 0 :(得分:0)

这是通常的做法。

@echo off
    setlocal enableextensions

    set "flagFile=c:\somewhere\list.txt"

:loop
    if not exist "%flagFile%" (
        ping -n 2 localhost > nul
        goto loop
    )

    echo File %flagFile% exists

    endlocal

对于非goto版本

@echo off
    setlocal enableextensions

    set "flagFile=c:\somewhere\list.txt"
    (cd.|for /l %%a in (0 0 1) do @(dir "%flagFile%">nul 2>nul && exit || ping -n 2 localhost > nul ))

    echo File %flagFile% exists

    endlocal

这会生成一个单独的cmd副本,该副本将循环直到该文件存在,并且在检查之间暂停1秒。