Запустить скрипт PHP с планировщиком задач Windows, в том числе с ошибками файлов

Мне дали машину с Windows 2012R2 с XAMPP. Мне нужно запланировать задачу, которая выполняется каждую минуту. Каждую минуту должен выполняться скрипт PHP. Это настроено правильно, я использую файл .BAT в качестве действия в планировщике заданий.

Проблема в том, что когда я тестирую файл .BAT, он работает как брелок (запустите файл .BAT из папки, в которой он находится). Но когда планировщик заданий выполняет файл .BAT, он терпит неудачу. Затем сценарий не может включать некоторые файлы, которые вызывает сценарий PHP. Я предполагаю, что это потому, что планировщик задач не выполняет сценарий из каталога, в котором находится сценарий PHP. CronjobBase.php содержит строку, которая включает в себя MyIncludes.php (пример, в реальной жизни файл начальной загрузки включен)

Это мой контент .BAT (нет разницы в использовании или оставлении кавычек с командой CD):

cd "D:\xampp\htdocs\MyApp\App\Cronjobs\""D:\xampp\php\php.exe" -f CronjobBase.php MyCronJob

Я пытаюсь CD в папку Cronjobs для выполнения CronjobBase.php с argv[1] как MyCronJob (который должен включать MyCronJob.php из CronjobBase.php). Это говорит мне, что CronjobBase.php не найден. Я предполагаю, что CD-ING в папку Cronjobs не удается.

Когда я пытаюсь "D:\xampp\php\php.exe" -f D:\xampp\htdocs\MyApp\App\Cronjobs\CronjobBase.php MyCronJob в качестве содержимого .BAT включение MyInclude.php завершается неудачно, и сценарий завершается.

Любые предложения о том, что я делаю не так?

1

Решение

это должно работать:

cd /D "D:\xampp\htdocs\MyApp\App\Cronjobs\""D:\xampp\php\php.exe" -f CronjobBase.php MyCronJob

ИЛИ ЖЕ:

D:
cd "D:\xampp\htdocs\MyApp\App\Cronjobs\""D:\xampp\php\php.exe" -f CronjobBase.php MyCronJob
3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]