0

我用以下几行创建了一个 .bat 文件

cd C:\MyFolder
d:
findstr "Apple" C:\log.txt |findstr "red" > red_apples.txt
SLEEP 3600
GOTO START

执行 bat 时,SLEEP 不工作,命令继续运行。

代码有什么问题吗?请帮忙 !

4

2 回答 2

2

我不相信 Windows 有sleep,您可以使用 来模拟它ping,如以下示例chkwait.cmd脚本所示:

    @setlocal enableextensions enabledelayedexpansion
    @echo off
    echo %time%
    call :waitfor 20
    echo %time%
    endlocal
    goto :eof

:waitfor
    setlocal
    set /a "t = %1 + 1"
    >nul ping 127.0.0.1 -n %t%
    endlocal
    goto :eof

上面的call :waitfor 20脚本将等待 20 秒:

pax> chkwait
10:18:13.42
10:18:33.51
于 2010-05-07T02:14:35.677 回答
0

Windows 批处理脚本中不存在 SLEEP。您将创建自己的睡眠包装 EXE 并从批处理中调用它。或者使用上面@paxdiablo 的巧妙技巧。

于 2010-05-07T02:29:39.320 回答