我在通过cron每小时运行的服务器上有这个bash脚本。我非常高兴,但现在用户希望能够通过Web界面配置频率。允许用户配置cron
我不觉得舒服地操纵cron配置编程,但我不确定其他选项是否更好。
我看到它的方式,我可以:
- 安排一个脚本来运行一次一分钟,检查它是否真的应该运行“现在”
- 放弃的cron完全和使用守护程序是它自己的调度程序。这可能意味着在Python
- 重写剧本......或者它从Web界面吸吮和操纵cron配置(用Python编写的BTW)
我该怎么办?
编辑:澄清,我担心操纵cron的主要原因是因为它基本上是没有验证的文本操作,如果我搞砸了,我的其他cron作业都不会运行。
这里是我落得这样做:
以stefanw的建议下,我增加了以下线在我的bash脚本的顶部:
if [ ! `cat /home/username/settings/run.freq` = $1 ]; then
exit 0
fi
我设置以下的cron作业:
0 */2 * * * /home/username/scripts/publish.sh 2_hours
@hourly /home/username/scripts/publish.sh 1_hour
*/30 * * * * /home/username/scripts/publish.sh 30_minutes
*/10 * * * * /home/username/scripts/publish.sh 10_minutes
从Web界面,我让用户选择这四个选项,并根据用户的选择,我写入字符串2_hours/1_hour/30_minutes/10_minutes
纳入档案/home/username/settings/run.freq
。
我不喜欢它,但它似乎是最好的选择。
听起来不错,我希望客户会对它满意。 – 2009-07-16 09:03:38