如何安排不使用Windows任务计划程序来运行bat文件?

问题描述:

我有一个触发Python脚本的批处理文件(* .bat),这个脚本大约需要25分钟才能完成交互操作(通过命令提示符)。这个批处理文件需要在每天早上运行。如何安排不使用Windows任务计划程序来运行bat文件?

当我试图将它设置为Windows任务计划程序上的计划任务并将其运行到那里时,它花费的时间几乎是交互式时间的两倍。即使我在xml中将优先级设置从默认值7设置为4(更高优先级),它也没有任何区别。更改优先级设置仅适用于I/O优先级,但对于内存优先级不起作用,内存优先级仍然保持在4(交互运行时为1级)。记忆优先在支持漫长过程中发挥重要作用。

我想知道是否有办法触发bat文件作为计划任务,但不使用任务计划程序,任务计划程序或脚本的替代程序?

+0

'备选程序到任务计划程序或脚本?' - [schtasks](https://ss64.com/nt/schtasks.html) – Stephan

'超时'可能是一个很好的命令,可以在没有任务计划程序的情况下安排您的任务。

timeout /t 1500 
[command to trigger Python script] 

所以,你想“这个批处理文件需要在早上跑......”,你可以设置开始时间和结束时间,以及:

set timeHrs=%time:~0,2% 
set timeMin=%time:~3,2% 
set timeSec=%time:~6,2% 

[insert timeout command] 

if "%timeHrs%" geq 6 if "%timeHrs%" leq 9 [command to trigger Python script] 
rem The above command is check if Hour is in 6-9 (in morning). 

如果你想,那么你可以复制下面的代码(你可能需要编辑的代码以及):

@echo off 
:loop 
set timeHrs=%time:~0,2% 
set timeMin=%time:~3,2% 
set timeSec=%time:~6,2% 

timeout /t 1500 

if "%timeHrs%" geq 6 if "%timeHrs%" leq 9 [command to trigger Python script] 
goto loop 

你也想加入代码退出为好,但我认为你不需要它,只是让代码运行的每一天。