如何为Symfony命令创建crontab


How to create crontab for Symfony command

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

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

你可能会从Ubuntu文档或手册页中找到一些优秀的参考资料,另外,一篇nixcraft文章可以让事情变得有意义,但是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通常应该使用一个绝对路径到你的应用程序目录,&&是逻辑的'和',所以如果'cd'失败(大概是因为目录不可访问)后半部分不会执行。

将此文件保存在任何地方,crontab手册建议用户不要直接编辑crontab文件。

打开主crontab文件:

crontab -e

或添加一个新文件到crontab:

crontab mynewcronfile

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

crontab -l