batch-file - 在一天中的特定时间之间运行批处理文件
问题描述
我想为我的 Windows 批处理脚本构建一个逻辑,它应该只在每天 7:00 到 23:00 之间运行。
我添加了如下逻辑
SET "Offertime=%time:~0,2%"
IF %Offertime% leq 23 set "RunOffer=True"
IF %Offertime% geq 07 set "RunOffer=True"
IF "%RunOffer%"=="True" (
CALL "C:\TCC_Touch_Point_Folder\bin\Windows\core\Rcap_Offer_Cal.bat"
)
exit
但这不起作用,任何人都可以让我知道我哪里出错了吗?或任何更好的方法来实现这个解决方案?
解决方案
您的条件始终为真,因为“Offertime”小于/等于 23 或大于/等于 7。这将起作用:
SET hour=%time:~0,2%
SET shouldrun=True
IF %hour% geq 23 SET shouldrun=False
IF %hour% leq 6 SET shouldrun=False
IF "%shouldrun%"=="True" (
CALL "C:\TCC_Touch_Point_Folder\bin\Windows\core\Rcap_Offer_Cal.bat"
)
推荐阅读
- multithreading - ExecutorService 提交方法返回 NULL
- javascript - TinyMCE 自动关闭标签和/或重新排列它们
- tomcat - 如何从主机访问在虚拟机上运行的 tomcat 实例
- ansible - 当在同一剧本中创建事实文件时,剧本无法读取 local_facts
- go - 覆盖全局变量
- html - 检索表单的字段
- perl - 自动替换服务器中的 exe 文件或 script/myscript.pl
- java - java.lang.IllegalStateException:找不到所需的标识符属性
- python - 无法通过 pip 安装 watson 开发者云模块
- regex - 将日志字符串转换为fail2ban的正则表达式