返回列表 发帖

[日期时间] 各位老师,bat命令如何在特定日期,特定时间点运行代码

:startreportnew
if "%time%" lss "12:30" goto :startreportnew
for %%i in (*D11*) do (
    echo %%i
    start /w "" excel.exe "%%i" /batOpen
)COPY
这段代码,我想修改成从2024-11-1到2024-11-3,2024-11-13到2024-11-15和2024-11-18到2024-11-20这三个日期段的的12:30和17:30运行一次。
判断条件怎么写

回复 1# jiaodaoniu

可用系统命令 schtasks 计划完成,批处代码如下...
@echo off &setlocal enabledelayedexpansion
for %%s in ( "01/03", "13/15", "18/20" ) do for /f "tokens=1,2 delims=/" %%a in (%%s) do (
   set/a "n+=1"
   schtasks /create /tn task!n! /tr "D:\test.bat" /sd 11/%%a/2024 /ed 11/%%b/2024 /st 12:30:00
   set/a "n+=1"
   schtasks /create /tn task!n! /tr "D:\test.bat" /sd 11/%%a/2024 /ed 11/%%b/2024 /st 17:30:00
)
endlocal&pause&exit/bCOPY
其中 "D:\test.bat" 即为计划定时运行的批处脚本路径,其内容例如一楼代码中的段落:
for %%i in (*D11*) do (
    echo %%i
    start "" /w excel.exe "%%i" /batOpen
)COPY

TOP

返回列表