动态cron工作?

时间:2010-06-01 11:54:50

标签: php cron

我正在编写一个需要在白天随机调用的脚本,但我不知道如何实现这一点。

我不想浪费服务器资源来每分钟运行一次cron作业。

我希望随机调用脚本,因此提前一个月生成随机时间,然后为每个人创建cron作业并不是我想要的。

此剧本也只需要每天执行一次。

提前致谢!

3 个答案:

答案 0 :(得分:2)

每次运行是否随机时间使用'at'提交进一步的运行? 这并不能保证它每天都会运行,但你可以将其作为一个平均值。

答案 1 :(得分:2)

这将添加一个cron作业:

echo "* * * * * /path/to/script" | crontab

你需要生成一个合适的时间而不是* * * * *(否则它将每分钟运行一次)。

echo "* * * * * /path/to/script" | crontab -r

将删除该作业。所以,现在你需要从PHP脚本中调用它们,我不记得它是如何在PHP中完成的。

修改

http://php.net/manual/en/function.system.php

更多编辑

每次脚本执行时,最后两个操作可能是删除当前的cron作业并在第二天生成另一个作业。

更多编辑

http://codepad.org/Z1B2v4lF - 这是我在Python中的表现。这可能每天运行一次以上。如果必须每天只运行一次,您也可以添加一个月中的值。

答案 2 :(得分:0)

如果您有权访问它,请在目标脚本运行时修改crontab文件并随机添加。