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

如何在windows批处理文件中的HH:29:55和HH:59:55触发命令,windows,batch-file,period,periodicity,Windows,Batch File,Period,Periodicity,在windows批处理文件(x.bat)中,当时间的第二个分量大于55时,如何每30分钟触发一次命令 我现在得到的是: :loop program.exe PING localhost -n 1800 >NUL goto loop 问题是计时不够精确,即在分钟%30==29时秒数>55。如前所述,任务调度器完全可以执行此任务。它可以每天运行,每30分钟运行一次,从下一个小时开始:59:55 也就是说,有很多方法可以编写这些脚本。这不是最健壮的解决方案,但它确实有效 @ec

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

我现在得到的是:

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

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

如前所述,任务调度器完全可以执行此任务。它可以每天运行,每30分钟运行一次,从下一个小时开始:59:55

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

@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

那么,展示你的代码怎么样?这太宽泛了。问题已经更新。那么您不使用计划程序的原因是什么?我对windows批处理命令的编码不是很熟练。如何使用计划程序?不,您将每天进行设置,在“高级设置”下,每30分钟设置一次rpeat任务,并给出下一个小时的启动时间:29:55显然,任务计划程序的一个问题是,如果电脑重新启动,我必须再次启动任务。有解决办法吗?目前,我正在将批处理脚本放在shell:startup中。如果您想保留29:55和59:55规则,可以选择我发布的脚本。