PHP在windows系統中定時任務的實現
阿新 • • 發佈:2019-02-12
@echo off
cls
::判斷Apache伺服器是否啟動
for /f "skip=3 tokens=4" %%i in ('sc query Apache) do set "zt=%%i" &goto :next
:next
if /i "%zt%"=="RUNNING" (goto 1)
if /i "%zt%"=="STOPPED" (goto 2)
:1
::隱藏CMD視窗執行
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
cd..
set rootDir=%cd%
cd..
::是Apcahe的bin目錄,應包含Apache.exe檔案
cd bin
set taskFile=timer.php
if exist "%rootDir%\%taskFile%" (goto exephp) else (echo err)
:exephp
echo %date:~0,10% %time:~0,8% Apache正常執行,推送待辦中...
echo 請保留此視窗或最小化執行
php -q "%rootDir%\%taskFile%"
exit
:2
echo %date:~0,10% %time:~0,8% Apache未執行
pause