目前,我的应用程序有几个命令,每次我都必须输入命令并手动运行程序。
目前,我决定创建一个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