批处理文件在带有计时器的文件夹中执行所有.exe

时间:2016-12-07 10:52:03

标签: windows batch-file

我已经在这个网站上搜索了,我现在知道如何在文件夹中排除所有.exe,这就是我可以做到的(使用批处理文件.bat):

for /r "." %%a in (*.exe) do start "" "%%~fa"

有没有办法在每个.exe文件之间用计时器(例如2s)执行它们?

3 个答案:

答案 0 :(得分:2)

for /r "." %%a in (*.exe) do start "" "%%~fa"&timeout /t 2 >nul

&分隔命令,> nul将timeout会话定向到位桶,以便不会看到它。

答案 1 :(得分:2)

批量生成超时的2个选项是:

  1. 使用timeout /t SECSEC替换为您想要的时间。如果您不希望用户通过按任意键来停止计时器,请添加/nobreak选项。但要小心这一点:它不能保证SEC秒计时器,只有保证它会使系统在SECSEC - 1之间的时间间隔进入休眠状态秒
  2. 第二个更准确的选择是使用ping -n S 127.0.0.1 > nul。由于每次ping之间有1秒,这将导致超时S-1
  3. 所以你可以做2秒钟:

    for /r "." %%a in (*.exe) do (
        start "" "%%~fa"
        timeout /t 2 /nobreak
        REM Or ping -n 3 127.0.0.1 > nul`
    )
    

答案 2 :(得分:1)

您可以使用timeout命令。要等待2秒,只需在每个.exe文件之间使用它。

timeout /T 2