从 cron 调用 phing 任务
Call phing task from cron
我被困了好几天了,
我需要一些从 cron 作业调用 phing 任务的好方法。
实际问题是在从 cron 调用 phing 任务后,php 引擎找不到 build.xml 文件,该文件位于我项目的主目录
build.xml 路径:abc/build.xml
phing 路径:abc/vendor/bin/phing
我的 cron:1 * * * * xyz/local/www/abc/vendor/bin/phing 测试
两种可能的解决方案。
第一个,你可以在你的cron中使用cd
:
my cron : 1 * * * * cd /xyz/local/www/abc/ && vendor/bin/phing test
第二种方案,使用-f
选项:
my cron : 1 * * * * /xyz/local/www/abc/vendor/bin/phing -f /path/build.xml test
如果构建文件中的相对路径有问题,您还应该在 <project>
标签中设置 basedir
属性:
<project default="help" name="my-project" basedir="/xyz/local/www/abc">
来源:
https://superuser.com/questions/155576/linux-how-to-run-a-command-in-a-given-directory
https://www.phing.info/phing/guide/en/output/chunkhtml/ch02s03.html
https://www.phing.info/phing/guide/en/output/chunkhtml/ch03s05.html
我被困了好几天了,
我需要一些从 cron 作业调用 phing 任务的好方法。
实际问题是在从 cron 调用 phing 任务后,php 引擎找不到 build.xml 文件,该文件位于我项目的主目录
build.xml 路径:abc/build.xml
phing 路径:abc/vendor/bin/phing
我的 cron:1 * * * * xyz/local/www/abc/vendor/bin/phing 测试
两种可能的解决方案。
第一个,你可以在你的cron中使用cd
:
my cron : 1 * * * * cd /xyz/local/www/abc/ && vendor/bin/phing test
第二种方案,使用-f
选项:
my cron : 1 * * * * /xyz/local/www/abc/vendor/bin/phing -f /path/build.xml test
如果构建文件中的相对路径有问题,您还应该在 <project>
标签中设置 basedir
属性:
<project default="help" name="my-project" basedir="/xyz/local/www/abc">
来源:
https://superuser.com/questions/155576/linux-how-to-run-a-command-in-a-given-directory
https://www.phing.info/phing/guide/en/output/chunkhtml/ch02s03.html
https://www.phing.info/phing/guide/en/output/chunkhtml/ch03s05.html