crontab 不是 运行 php 脚本
crontab not running php script
crontab 在某一时刻 运行 正常,但在 运行 一天后它删除了 /var/spool/cron/crontabs
中的文件
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.DYqvRY/crontab installed on Thu Mar 17 14:50:32 2016)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
# Edit this file to introduce tasks to be run by cron.
#
# 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
0 0 1 * * /var/www/html/mail.php
0 0 16 * * /var/www/html/mail.php
0 13 2 * * /var/www/html/mailcheck.php
0 13 17 * * /var/www/html/mailcheck.php
0 13 2 * * /var/www/html/mailcheckadmin.php
0 13 17 * * /var/www/html/mailcheckadmin.php
0 0 1 * * /var/www/html/PaymentPeriod_Create.php
0 0 16 * * /var/www/html/PaymentPeriod_Create.php
* * * * * /var/www/html/testsession.php > /var/www/html/log
我正在使用 # crontab -e
编辑此文件然后当我完成后我按 ^X Y ENTER
我是否缺少任何额外的步骤 * * * * * /var/www/html/testsession.php > /var/www/html/log
这应该每分钟 运行 对吗?
语法 * * * * * /var/www/html/testsession.php > /var/www/html/log
有效。
很可能因为它是 crontab 中的最后一行,所以它缺少换行符。 Cron 需要在每个条目的末尾换行;换句话说,您的 crontab 必须以空行结尾。
来自 man crontab
的 "Diagnostics" 部分:
cron requires that each entry in a crontab end in a newline character. If the last entry in a crontab is missing the newline, cron will consider the crontab (at least partially) broken and refuse to install it.
您可能希望将 >
替换为 >>
,以便将新内容附加到日志文件而不是每分钟覆盖一次,即 * * * * * /var/www/html/testsession.php >> /var/www/html/log
。如果日志文件不存在,这仍然会创建日志文件。
您的 PHP 文件还需要设置执行位,并且需要在第一行以 #!/usr/bin/php
(或系统上 PHP 的路径)开头。或者,您可以将 cron 行替换为 * * * * * /usr/bin/php /var/www/html/testsession.php >> /var/www/html/log
以明确使用 PHP 解释器来执行脚本。
crontab 在某一时刻 运行 正常,但在 运行 一天后它删除了 /var/spool/cron/crontabs
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (/tmp/crontab.DYqvRY/crontab installed on Thu Mar 17 14:50:32 2016)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
# Edit this file to introduce tasks to be run by cron.
#
# 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
0 0 1 * * /var/www/html/mail.php
0 0 16 * * /var/www/html/mail.php
0 13 2 * * /var/www/html/mailcheck.php
0 13 17 * * /var/www/html/mailcheck.php
0 13 2 * * /var/www/html/mailcheckadmin.php
0 13 17 * * /var/www/html/mailcheckadmin.php
0 0 1 * * /var/www/html/PaymentPeriod_Create.php
0 0 16 * * /var/www/html/PaymentPeriod_Create.php
* * * * * /var/www/html/testsession.php > /var/www/html/log
我正在使用 # crontab -e
编辑此文件然后当我完成后我按 ^X Y ENTER
我是否缺少任何额外的步骤 * * * * * /var/www/html/testsession.php > /var/www/html/log
这应该每分钟 运行 对吗?
语法 * * * * * /var/www/html/testsession.php > /var/www/html/log
有效。
很可能因为它是 crontab 中的最后一行,所以它缺少换行符。 Cron 需要在每个条目的末尾换行;换句话说,您的 crontab 必须以空行结尾。
来自 man crontab
的 "Diagnostics" 部分:
cron requires that each entry in a crontab end in a newline character. If the last entry in a crontab is missing the newline, cron will consider the crontab (at least partially) broken and refuse to install it.
您可能希望将 >
替换为 >>
,以便将新内容附加到日志文件而不是每分钟覆盖一次,即 * * * * * /var/www/html/testsession.php >> /var/www/html/log
。如果日志文件不存在,这仍然会创建日志文件。
您的 PHP 文件还需要设置执行位,并且需要在第一行以 #!/usr/bin/php
(或系统上 PHP 的路径)开头。或者,您可以将 cron 行替换为 * * * * * /usr/bin/php /var/www/html/testsession.php >> /var/www/html/log
以明确使用 PHP 解释器来执行脚本。