如何在Ubuntu操作系统上使用cron作业每天运行一个php脚本

时间:2015-01-30 12:03:04

标签: php linux cron ubuntu-12.04 crontab

命令运行我正在使用ubuntu 12和灯服务器。我想在每1小时后运行一个php脚本。我已经创建了一个crontab来执行此操作,如果我使用命令crontab -l检查我的cron列表,它就会显示为

# Edit this file to introduce tasks to be run by cron.
0 * * * * /usr/bin/php5 -q /var/www/cronjobs/cron1.php

# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
# 
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').# 
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
# 
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
# 
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
# 
# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command

这是我的PHP脚本

0 * * * * /usr/bin/php5 -q /var/www/cronjobs/cron1.php

但它没有执行

我怎样才能检查它为什么不起作用,请帮忙

4 个答案:

答案 0 :(得分:6)

要找出您的cron有什么问题,您可以在终端中输入以下命令:

grep -i "cron1.php" /var/log/syslog

syslog包含所有crons日志。

尝试在终端上运行代码/usr/bin/php5 -q /var/www/cronjobs/cron1.php以检查是否有错误。

您还可以将所有错误重定向到文件:

0 * * * * /usr/bin/php5 -q /var/www/cronjobs/cron1.php 2> /tmp/errorCron1.txt

答案 1 :(得分:5)

您可以使用crontab添加/删除/编辑cronjobs。

按Alt + Ctrl + T打开终端。

首先通过运行以下命令确保脚本可执行:

chmod +x YOURSCRIPT

然后运行以下命令添加你的cronjob:

crontab -e

像这样添加你的cronjob:

0 * * * * /usr/local/bin/php path/of/php/file

就是这样!

您可以通过运行以下方式检查当前用户的crontab条目:

crontab -l

有关crontab run的更多信息:

crontab --help

OR

man crontab

答案 2 :(得分:3)

使用包含

创建脚本文件/etc/scripts/cron.sh
condition 1(identical data)> i just insert the data on tableA to tableB
           PK    Name  Age
tableA    D001  ANDY  17
tableB    D001  ANDY  17

condition 2(tableA!=tableB) 
i want it automatically update the column that different in tableB with the one in tableA
           PK      Name    Age     
tableA    D001  ANDY WEST  17
tableB    D001  ANDY       17

然后保存

cd /var/www/

/usr/bin/php cron.php

然后继续/ etc / crontab

chmod +x cron.sh

保存 并等待

答案 3 :(得分:2)

这是crontab参数的描述

# Minute   Hour   Day of Month       Month          Day of Week        Command    
# (0-59)  (0-23)     (1-31)    (1-12 or Jan-Dec)  (0-6 or Sun-Sat)                
0        2          12             *                *            /usr/bin/find

要每小时运行一次脚本,请使用以下crontab条目。

0 */1 * * * /usr/bin/php5 -q /var/www/cronjobs/cron1.php

这样你的脚本就会每小时开始执行一次。