我有一个批处理(* .bat)文件触发Python脚本,这个脚本大约需要25分钟才能完成交互(通过命令提示符手动完成)。此批处理文件需要每天早上运行。
当我尝试将其设置为Windows任务计划程序上的计划任务并在那里运行时,它花费的时间几乎是交互式的两倍。即使我在xml中将优先级设置从默认的7到4(更高优先级)设置,它也没有任何差异。更改优先级设置仅适用于I / O优先级,但不适用于内存优先级,内存优先级仍为4(交互式运行时为1级,即5)。内存优先级在支持漫长过程中起着重要作用。
我想知道是否有办法触发bat文件作为计划任务但不使用任务计划程序,任务计划程序或脚本的替代程序?
“超时”可能是一个很好的命令,无需任务计划程序即可安排任务。
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
您还希望在代码中添加退出,但我认为您不需要它,只需让代码每天运行。