如何设置在特定日期之后停止的cron任务?

时间:2015-03-29 06:14:44

标签: cron crontab cron-task cronexpression

我想帮助设置一个每10分钟运行一次的cron作业,并在下周一00:00:00停止。

0 0 30 3 * /var/www/html/reports/Test.php

1 个答案:

答案 0 :(得分:0)

cron本身没有这样的设施。但是你可以实现你的目标,如下所述。我没有使用确切的命令 - 但这是可行的。

  1. 不要将您的cron作业放在crontab中。将其放在/etc/cron.d中,文件名如下:/etc/cron.d/<your login name>-test-reports.php。使用您的登录名作为脚本文件名的一部分可以减少文件名冲突的可能性。放置时间规范和要在脚本中运行的命令。这可能需要root权限,因为/etc/cron.d仅对root用户rw
  2. 弄清楚下周一的这一天。比如说,如果是2015年3月30日,请安排一个at脚本从/etc/cron.d中删除您感兴趣的日期和时间的cron文件。您还可以使用命令date --date "next Monday"确定下周一的日期,以避免在at脚本中对日期进行硬编码。