`

Linux下用Crontab来实现PHP的定时运行<摘录>

阅读更多
1.用PHP编写编写shell
getscore.php
# #!/usr/local/bin/php -q
#     <?
#     $g_dbhost = "localhost";
#     $g_dbname = "1bo8";
#     $g_dbuserid = "root";
#     $g_dbpasswd = "";
#     function opendb(){
#     global $g_dbhost, $g_dbuserid, $g_dbpasswd, $g_dbname, $g_errmsg;
#     $conn = mysql_connect($g_dbhost,$g_dbuserid,$g_dbpasswd);
#     if(!$conn) die($g_errmsg.mysql_error());
#     @mysql_select_db($g_dbname, $conn);
#     if(mysql_errno()) die($g_errmsg.mysql_error());
#     return $conn;
#     }
#     opendb();
#     $date = date("Y-m-d");
#     $time = date("H:i:s");
#     echo $sql = "insert into football_rate set fr_date='$date',fr_time='$time'";
#     $res = mysql_query($sql) or die(mysql_error());
#     ?> 


数据库:
#     CREATE TABLE `1bo8` (
#     `fr_date` date NOT NULL default '0000-00-00',
#     `fr_time` varchar(32) NOT NULL default ''
#     ) ENGINE=innoDB DEFAULT CHARSET=utf8; 


2.设定crontab
执行 vi /etc/crontab 命令

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root

# run-parts
* * * * * root /home/bjbs270/public_html/getscore.php # 每一分钟执行一次所指定的程序
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly

3.重启crond
/etc/rc.d/init.d/crond start/stop/restart
附:

Crontab是UNIX系统下的定时任务触发器,其使用者的权限记载在下列两个文件中:
/usr/var/adm/cron/cron.deny:该文件中所列的用户不允许使用Crontab命令;
/usr/var/adm/cron/cron.allow:该文件中所列的用户允许使用Crontab命令;
Crontab命令的格式为:crontab –l|-v|-r|-e [username],其参数含义如表一:

参数名称 含义
-l 显示用户的Crontab文件的内容
-v 显示用户的Crontab文件的内容及其提交的时间,只适用于Compaq系列
-r 从Crontab目录中删除用户的Crontab文件
-e 编辑用户的Crontab文件

用户所建立的Crontab文件存于/var/spool/cron/crontabs中,其文件名与用户名一致。
它的格式共分为六段,前五段为时间设定段,第六段为所要执行的命令段,
格式如下:* * * * * <command>

其时间段的含义如表二:

段 含义 取值范围
第一段 代表分钟 0—59
第二段 代表小时 0—23
第三段 代表日期 1—31
第四段 代表月份 1—12
第五段 代表星期几,0代表星期日 0—6


例:如果用户的Crontab文件的内容是:29 19 * * * echo its dinner time,则系统每天的19:29显示‘its dinner time’。
附:当这六段什么都不设的话就是程序在1秒中执行一次
我在用CRON的时候把“01 * * * * 命令1”当成了是每一秒中程序执行一次命令一。这个想法误导了我很久,其实这句话的意思是每个小时的第一分钟程序执行一次。

修改 /etc/crontab 和 crontab -e 指令有何不同?

/etc/crontab 的設定是針對整個系統,只有 root 才有權限修改
crontab -e 的設定是針對個人, 用 crontab -e 建的個人排程會放在 /var/spool/cron/ 下
crontab -e
//編輯排程
crontab -r
// 刪除排程
crontab -l
// 列出排程
分享到:
评论

相关推荐

    LINUX与UNIX SHELL编程指南

    匹配一个范围或集合 52&lt;br&gt;7.7 使用\{\}匹配模式结果出现的次数 53&lt;br&gt;7.8 小结 55&lt;br&gt;第8章 grep家族 56&lt;br&gt;8.1 grep 57&lt;br&gt;8.1.1 双引号引用 57&lt;br&gt;8.1.2 grep选项 57&lt;br&gt;8.1.3 查询多个文件 57&lt;br&gt;8.1.4 行匹配 ...

    LINUX与UNIX_SHELL编程指南1

    匹配一个范围或集合 52&lt;br&gt;7.7 使用\{\}匹配模式结果出现的次数 53&lt;br&gt;7.8 小结 55&lt;br&gt;第8章 grep家族 56&lt;br&gt;8.1 grep 57&lt;br&gt;8.1.1 双引号引用 57&lt;br&gt;8.1.2 grep选项 57&lt;br&gt;8.1.3 查询多个文件 57&lt;br&gt;8.1.4 行匹配 ...

    Linux定时脚本crontab中文乱码.docx

    当我们在 Linux 系统中使用 crontab 执行 jar 文件时,输出结果中出现中文乱码的原因是由于 Unix/Linux 下的 crontab 环境与用户环境的差异。通常情况下,用户环境中会设置一些环境变量,例如语言环境变量 LANG,...

    利用rsync+crontab实现Linux的定时增量备份

    5. **自动化备份**:结合crontab工具,可以设置定时任务,让rsync定期执行备份操作,实现自动化增量备份。 【总结】 rsync是一款强大的文件同步和备份工具,它的灵活性和效率使其成为Linux环境中不可或缺的一部分...

    linux目录架构

    &lt;br&gt; /var/log/maillog 紀錄郵件存取或往來( sendmail 與 pop3 )的使用者記錄 &lt;br&gt; /var/log/cron 記錄 crontab 這個例行性服務的內容 &lt;br&gt; /var/log/httpd, /var/log/news, /var/log/mysqld.log, /var/log/samba, /...

    Linux中使用crontab自动清除日志

    Linux 中使用 crontab 自动清除日志 Linux 中使用 crontab 自动清除日志是一种常见的日志管理方法。crontab 命令是 Unix 和类 Unix 操作系统中设置周期性被执行的指令的命令。该命令从标准输入设备读取指令,并将其...

    linux C7 crontab离线安装包

    在Linux系统中,Crontab...总结来说,Linux CentOS 7的Crontab离线安装包提供了在无网络环境下安装和管理定时任务的能力,通过RPM包管理方式,我们可以方便地在系统中部署和配置Crontab,实现自动化维护和管理工作。

    利用Crontab为Linux定时备份Mysql数据库

    下面将详细介绍如何利用Crontab来实现Linux定时备份MySQL数据库的步骤。 首先,你需要创建一个用于存放备份文件的目录。在本例中,我们创建`/mysqldata`作为备份存储位置: ```bash # mkdir /mysqldata ``` 接...

    Linux中的Crontab实现PHP计划任务linux操作系统电脑资料.doc

    在 PHP 中,我们可以使用 Crontab 来实现计划任务,例如定时发送内容、执行 PHP 脚本等。下面我们将详细介绍在 Linux 中使用 Crontab 实现 PHP 计划任务的方法。 一、使用 Crontab 执行 PHP 脚本 在 Crontab 中,...

    Linux Crontab 定时任务 命令详解

    Linux Crontab 定时任务 命令详解 Linux Crontab 是一个强大的定时任务命令,用于在指定的时间间隔执行特定的命令或程序。Crontab 命令的功能是在一定的时间间隔调度一些命令的执行,通过编写 Crontab 文件来实现。...

    linux下自动运行php或定时运行php

    这里我们将详细介绍如何在Linux环境下实现这一目标,主要涉及两种方法:通过修改PHP文件并使用`cron`服务,以及根据PHP的运行模式(Apache模块和CGI)来调用脚本。 首先,我们来看第一种方法,即通过在PHP文件前...

    结合crontab实现数据库定时备份

    本文将详细介绍如何使用`crontab`工具来实现MySQL数据库的定时备份。 #### 一、crontab简介 `crontab`(Cron table)是Unix/Linux操作系统中的一个标准服务,用于设置周期性执行的任务。用户可以使用`crontab`命令...

    linux定时执行crontab.pdf

    `Linux`的`crontab`是一个强大的定时任务调度工具,它允许用户按照预定的时间间隔执行任务。`crontab`的全称是`cron table`,意为“cron的表”,它通过读取用户定义的配置来决定何时运行哪些命令。以下是对`crontab`...

    Linux服务器利用crontab+workerman实现PHP定时向页面端推送消息

    首先以守护进程方式开启push.php:php push.php -d,然后再data.php中写出你的逻辑,放在推送数据$data['data']里,crontab定时任务跑data.php。 注:push.php开启后,页面端websocket中ws的链接与端口要与服务器地址...

    linux 定时任务 crontab 详细解释

    ### Linux定时任务Crontab详解 #### 一、Crontab简介 在Linux系统中,Cron服务是一种用于计划执行任务的工具。它允许用户设置周期性运行的任务,例如自动备份数据、定时发送邮件等。Cron服务的核心是`crontab`命令...

    利用rsync+crontab实现Linux的定时增量备份.docx

    本文主要讲述如何使用 rsync 工具和 crontab 实现 Linux 的定时增量备份。rsync 是一个快速增量文件传输工具,可以用于在同一主机备份内部的备份,也可以作为不同主机网络备份工具之用。 1. rsync 介绍 rsync 是一...

    linux-运用crontab检测程序是否在运行可通过检测进程或检测端口

    在Linux系统管理中,定期执行任务是不可或缺的一部分,而`crontab`工具就是实现这一功能的核心组件。它允许用户设定定时任务,按照预设的时间间隔执行特定的命令或者脚本。在标题和描述中提到的场景,我们将讨论如何...

    利用rsync+crontab实现Linux的定时增量备份.pdf

    在使用rsync服务器时,我们可以使用crontab来实现定时增量备份。crontab是一个命令工具,用于在Linux系统中计划和执行任务。我们可以使用crontab来实现每天、每周、每月等定时备份的任务。 使用rsync服务器可以实现...

    Java编写的linux下定时通过ftp上传文件

    本篇文章将详细讲解如何利用Java在Linux环境下实现定时通过FTP(File Transfer Protocol)上传文件,同时也会对比在Windows环境下进行此类操作时的差异。 首先,我们需要了解Java中用于FTP操作的库,如`commons-...

Global site tag (gtag.js) - Google Analytics