如何在 windows 批处理文件中在 HH:29:55 和 HH:59:55 触发命令

How to fire a command at HH:29:55 and HH:59:55 in a windows batch file

在 windows 批处理文件 (x.bat) 中,当时间的第二部分大于 55 时,如何每 30 分钟触发一次命令?

我现在拥有的是:

:loop
    program.exe
    PING localhost -n 1800 >NUL
goto loop

问题是时间不够精确,即。秒>55 分钟 %30==29.

如前所述,任务计划程序胜任此任务。它可以是每天 运行,从 next hour:59:55

开始每 30 分钟一次

也就是说,有很多方法可以编写这些东西的脚本。这不是最可靠的解决方案,但它确实有效。

@echo off
:start
for /f %%i in ('powershell Get-Date -Format mm:ss') do (
    if "%%i"=="29:55" program.exe
    if "%%i"=="59:55" program.exe
timeout 1 /nobreak>nul
)
goto start