如何配置一个cron作业在每天晚上2:30运行?我知道如何让它在2点运行,但不是2:30。


当前回答

正如在其他答案中看到的,使用的语法是:

  30 2 * * * /your/command
# ^  ^
# |   hour
# minute

遵循crontab标准格式:

 +---------------- minute (0 - 59)
 |  +------------- hour (0 - 23)
 |  |  +---------- day of month (1 - 31)
 |  |  |  +------- month (1 - 12)
 |  |  |  |  +---- day of week (0 - 6) (Sunday=0 or 7)
 |  |  |  |  |
 *  *  *  *  *  command to be executed

使用crontab也很有用。Guru检查crontab表达式。

使用crontab -e将表达式添加到crontab中。完成之后,保存并退出(如果使用vi,输入:x即可)。使用这个工具的好处是,如果你写了一个无效的命令,你可能会在表单上得到一个消息提示:

$ crontab -e
crontab: installing new crontab
"/tmp/crontab.tNt1NL/crontab":7: bad minute
errors in crontab file, can't install.
Do you want to retry the same edit? (y/n) 

如果您有crontab不运行的进一步问题,您可以检查调试crontab或为什么crontab不执行我的PHP脚本?

其他回答

编写cron的一种简单方法是使用在线cron生成器 它会为你生成直线。需要注意的一点是,如果您希望每天(而不仅仅是工作日)运行它,则需要突出显示所有日子。

crontab -e

add:

30 2 * * * /your/command

正如在其他答案中看到的,使用的语法是:

  30 2 * * * /your/command
# ^  ^
# |   hour
# minute

遵循crontab标准格式:

 +---------------- minute (0 - 59)
 |  +------------- hour (0 - 23)
 |  |  +---------- day of month (1 - 31)
 |  |  |  +------- month (1 - 12)
 |  |  |  |  +---- day of week (0 - 6) (Sunday=0 or 7)
 |  |  |  |  |
 *  *  *  *  *  command to be executed

使用crontab也很有用。Guru检查crontab表达式。

使用crontab -e将表达式添加到crontab中。完成之后,保存并退出(如果使用vi,输入:x即可)。使用这个工具的好处是,如果你写了一个无效的命令,你可能会在表单上得到一个消息提示:

$ crontab -e
crontab: installing new crontab
"/tmp/crontab.tNt1NL/crontab":7: bad minute
errors in crontab file, can't install.
Do you want to retry the same edit? (y/n) 

如果您有crontab不运行的进一步问题,您可以检查调试crontab或为什么crontab不执行我的PHP脚本?

30 2 * * * wget https://www.yoursite.com/your_function_name

第一部分是设置cron作业,下一部分是调用函数。

编辑: crontab - e 添加以下命令行: 30 2 * * * /your/命令 Crontab格式: 最小小时dom mon dow CMD 格式含义和允许值: MIN分钟字段0 ~ 59 HOUR小时字段0 ~ 23 DOM月1日至31日 MON月份字段1-12 道琼斯指数每周0-6日 CMD命令要执行的命令。 使用最新数据重新启动cron: 服务重新启动