Как запустить задание cron с аргументами и передать результаты в журнал?
Пример:
* * * * * /usr/bin/php /full/path/to/script.php arg1 arg2 > /full/path/to/logfile.log
script запускает и обращается к аргументам очень хорошо, но результаты никогда не печатаются в файле logfile.log. Кроме того, мой файл logfile.log - chmod 777, поэтому я знаю, что он имеет доступ на запись.
Можете ли вы исправить мой синтаксис?
Ответы
Ответ 1
Похоже, что вы ищете файл журнала в неправильной папке.
Попробуйте это
* * * * * cd /path/to/script.php ; ./script.php arg1 arg2 >> logfile.log
Затем найдите файл журнала в папке /path/to/ script.
Это также может быть проблемой разрешения записи.
Также проверьте ошибки script.
Ваша команда crontab выглядит нормально.
Ответ 2
Правильно ли работает команда из командной строки?
Вполне возможно, что аргументы содержат некоторые символы, обработанные специально оболочкой. В этом случае вам нужно процитировать всю команду, чтобы предотвратить переработку оболочки с аргументами.