小编给大家分享一下Linux下怎么定时运行php脚本,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
安装crontab
yum install crontabs
说明: /sbin/service crond start //启动服务 /sbin/service crond stop //关闭服务 /sbin/service crond restart //重启服务 /sbin/service crond reload //重新载入配置
查看crontab服务状态:service crond status
手动启动crontab服务:service crond start
查看crontab服务是否已设置为开机启动,执行命令:ntsysv
加入开机自动启动: chkconfig –level 35 crond on

注:可以使用systemctl list-units命令查看crond服务有没有开启

crontab -e,进入编辑页面,i键进入编辑模式
参 数:
-e 编辑该用户的计时器设置。 -l 列出该用户的计时器设置。 -r 删除该用户的计时器设置。 -u 指定要设定计时器的用户名称。
crontab 格式:
基本格式 :
分钟 小时 日 月 星期 命令
* * * * * *
第1列表示分钟1~59 每分钟用*或者 */1表示 第2列表示小时1~23(0表示0点) 第3列表示日期1~31 第4列 表示月份1~12 第5列标识号星期0~6(0表示星期天) 第6列要运行的命令
记住几个特殊符号的含义: “*”代表取值范围内的数字, “/”代表”每”, “-”代表从某个数字到某个数字, “,”分开几个离散的数字
本例中执行:* */1 * * * /usr/bin/php /www/wwwroot/snow/test.php 设置每分钟执行一次test.php文件 Esc->:wq退出保存 (*/1 * * * *也代表每一分钟执行)
注:/usr/bin/php //调用php
/www/wwwroot/snow/test.php //需要执行的php文件

3.可以执行命令:tail -f /var/log/cron可以查看corntab的执行情况(ctrl+c退出)

4.thinkphp 中的实践操作:
1)控制器:
namespace app\admin\command;
use think\console\Command;
use think\console\Input;
use think\console\Output;
use think\Db;
use think\Log;
class AutoTest extends Command
{
protected function configure()
{
$this->setName('autoTest')->setDescription("定时任务测试");
}
//调用这个类时,会自动运行execute方法
protected function execute(Input $input, Output $output)
{
$output->writeln('Date Crontab job start...');
/*** 这里写计划任务列表集 START ***/
/**需要执行的代码**/
/*** 这里写计划任务列表集 END ***/
$output->writeln('Date Crontab job end...');
}
}
2)command.php中加入:
return [
'app\admin\command\AutoTest',
];
3)定时任务:
*/1 * * * * sudo -u www /www/server/php/72/bin/php /www/wwwroot/project/think autoTest
看完了这篇文章,相信你对“Linux下怎么定时运行php脚本”有了一定的了解,如果想了解更多相关知识,欢迎关注天达云行业资讯频道,感谢各位的阅读!