Cron的工作不在Raspberry工作

时间:2015-04-16 15:11:38

标签: php linux cron raspberry-pi

我想在我的Raspberry中添加一个cron作业,每五分钟执行一次任务。 所以我在终端做了:

crontab -e

然后在文件中添加:

*/1 * * * * /usr/bin/php myscript path.

脚本非常简单。只是尝试它是否有效:

 <?php
$myfile = fopen("newfile.txt", "w") or die("Unable to open file!");
$txt = date("l jS \of F Y h:i:s A") . "<br>";;
fwrite($myfile, $txt);
fclose($myfile);
?>

问题是日期没有更新,因此cron作业不起作用。对这个问题有什么看法吗?

更新

当我执行crobtab -e

时,我得到了这个
    GNU nano 2.2.6        File: /tmp/crontab.3IXg0z/crontab                       

# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command
* * * * * /usr/bin/php /full/path/myscript.php

3 个答案:

答案 0 :(得分:3)

首先,确保脚本是可执行的:

chmod +x /path/to/some/script.php

其次,请确保您的脚本在第一行有适当的#!(或&#34; shebang&#34; ):

#!/usr/bin/php

然后确保您的cron作业配置正确。 cron的格式通常为m h dom mon dow command

sudo crontab -e

*/5 * * * * /path/to/some/script.php

答案 1 :(得分:1)

如果您想每5分钟运行一次脚本,则应添加此条目。

*/5 * * * * /usr/bin/php /full/path/to/php/script.php

答案 2 :(得分:1)

确保在crontab上正确设置了PATH变量,以便它可以找到您的文件。

您可以简单地将以下行添加到crontab

的顶部
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/path/to/newfile.txt

尝试,按照测试

* * * * * touch /tmp/hello

执行以下操作以重定向结果

*/5 * * * * /usr/bin/php /full/path/to/php/script.php > /tmp/out.txt

确保您的脚本在命令行上运行。

/usr/bin/php /full/path/to/php/script.php

使用-f选项执行脚本:

*/5 * * * * /usr/bin/php -f /full/path/to/php/script.php

尾部记录文件以查看每5分钟执行一次

tail -f /var/log/cron