如何为Symfony命令创建crontab

时间:2014-06-20 04:57:18

标签: php symfony cron

目前,我的应用程序有几个命令,每次我必须输入命令并手动运行程序。

目前,我决定创建一个crontab来执行这些命令。但我不确定基于Symfony创建crontab的过程。例如,如何创建crontab,我应该将crontab文件放在哪个文件夹中等等。

1 个答案:

答案 0 :(得分:2)

您可以从Ubuntu文档中找到一些excellent references,或者从manual page找到nixcraft article可以理解的东西,但crontab所做的全部是执行shell命令,

每个cron定义都在文件的行上,格式如下:

* * * * * command to be executed
- - - - -
| | | | |
| | | | ----- Day of week (0 - 7) (Sunday=0 or 7)
| | | ------- Month (1 - 12)
| | --------- Day of month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)

您可能想要采用的一般形式是:

0 12,13 * * * cd /var/www/path/to/symphonyappdir/ && php mysymphonything.php

cd通常应该使用app dir的绝对路径,&&是'and'的逻辑,所以如果'cd'失败(可能是因为目录无法访问)下半场不会执行。

将此文件保存在任何位置,crontab manual建议用户不要直接编辑crontab文件。

使用以下命令打开主crontab文件:

crontab -e

或者使用以下命令将新文件添加到crontab:

crontab mynewcronfile

您还可以使用以下内容获取当前的crontab文件:

crontab -l