Запускать программу по времени
Здравствуйте, подскажите как лучше всего решается следующая задача:
1) Запускаем .bat
2) Проверяем время
3) Если время между 09 - 15 часами идём goto Work else goto Loop
Заранее спасибо за помощь.
|
Patroklos, Не знаю, что Вы имеете ввиду под Work и Loop, вот вариант
Код:
@Echo Off
cls
Set "Time1=09:00"
Set "Time2=22:00"
Set "Delim=:"
Call :TCount "%%Time1:%Delim%=%%00" "T1"
Call :TCount "%%Time2:%Delim%=%%00" "T2"
Set "T=%Time:~0,-3%"
Call :TCount "%%T:%Delim%=%%" "T"
If %T% LSS %T1% Call :Loop &GoTo :Eof
If %T% GTR %T2% Call :Loop &GoTo :Eof
If %T1% LEQ %T% If %T% LEQ %T2% Call :Work
Exit /B 0
:TCount
SetLocal
Set "T=%~1"
Set "T=00%T: =%"
EndLocal &Set /A %~2=1%T:~-6%
Exit /B 0
:Loop
Echo Loop %T1:~1% %T:~1% %T2:~1%
Pause
GoTo :Eof
:Work
Echo Work %T1:~1% %T:~1% %T2:~1%
Pause
GoTo :Eof
|
Код:
@echo off
setlocal enableextensions enabledelayedexpansion
for /f "usebackq delims=:" %%i in (`time /t`) do set "sHours=%%i"
if defined sHours if "%sHours%" geq "09" if "%sHours%" lss "15" (
echo goto :Work
)
echo goto :Loop
endlocal
exit /b 0
|
Patroklos, А время 15:59 принадлежит интервалу между 09 и 15 или нет?
|
Цитата:
Цитата megaloman
А время 15:59 принадлежит интервалу между 09 и 15 или нет? »
|
Мне поминутная точность не важна. Спасибо.
|
Время: 23:18.
© OSzone.net 2001-