我将在计划的基础上通过curl触发对PHP文件的调用。我正在考虑让每个 23:59:59 执行脚本,或者只是在明天前一天之前执行。对此最好的方法是什么?还是对cron设置感到困惑。
我需要确保在第二天之前准确地跑一秒钟。
答案 0 :(得分:14)
Minutes [0-59]
| Hours [0-23]
| | Days [1-31]
| | | Months [1-12]
| | | | Days of the Week [Numeric, 0-6]
| | | | |
* * * * * home/path/to/command/the_command.sh
59 23 * * * home/path/to/command/the_command.sh
答案 1 :(得分:8)
要在每天23:59:00执行脚本,请使用以下命令:
59 23 * * * root /path_to_file_from_root
无法使用Cron 定义秒数,但这应该适合您。
要在23:59:59执行脚本,请使用PHP sleep()
函数将脚本执行延迟59秒。我会建议58秒,只是为了确保脚本在午夜之后不会延迟。
这是非常基本的,您可以使它更复杂并运行测试以确保脚本始终在23:59:59运行,方法是检索时间并适当延迟。但这不应该是必要的。
<?php
// Any work that the script can do without altering the database, do here
// Delay the script by 58 seconds
sleep(58);
// Carry on with the rest of the script here, database updates etc
?>
答案 2 :(得分:1)
按
启动crontab编辑crontab -e
或
vi /etc/cronatb
这取决于发行版。
59 23 * * * root /path/to/your/php/file.php
请注意,“root”列表示启动作业的用户名,可能在您的系统上不可用。
尝试运行
man crontab
了解更多详情
答案 3 :(得分:0)
您可以将其设置为每天23:59:00运行,看一下放置here的示例。具体看一下例子没有。 1,它解释了如何在每天的特定时间设置cronjob。