【问题标题】:Crontab shell scripting PHP testcrontab shell 脚本 PHP 测试
【发布时间】:2015-03-05 17:51:43
【问题描述】:

这是我的脚本(autoRun.sh,它是可执行的):

date >> testResults.txt
php DatabaseTest.php >> testResults.txt

这是我的 crontab 文件:

30 11 * * * /Users/myName/Desktop/autoRun.sh

DatabaseTest.phptestResults.txt 都以autoRun.sh 存在于桌面上,但是当我检查我的文本文件时,里面什么都没有,时间已经过去了。

对我需要对文件进行的更改有什么建议吗?

【问题讨论】:

  • 这可能是您的交互式登录环境和您的 cron 作业运行的环境之间的差异。php 可能不在您的路径上,并且工作目录在 cron 环境中可能不同。

标签: php shell pipe crontab


【解决方案1】:

尝试指定 php 可执行文件的直接路径,例如

/usr/bin/php

你可以在命令行查看你在哪里运行php:

which php

当您使用 cron 运行 shell 脚本时,通常是系统用户在运行该脚本,并且该用户没有相同的环境设置。

【讨论】:

  • 这就是问题所在。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-30
  • 2012-06-01
  • 2020-10-19
相关资源
最近更新 更多