【问题标题】:Cron job failed to run just on every LAST Friday of every monthCron 作业未能在每个月的最后一个星期五运行
【发布时间】:2014-06-30 11:54:13
【问题描述】:

我之前在这里问过这个问题,然后我就使用这个代码来完成这项工作。问题是 cron 作业运行了,但它应该只在星期五运行,相反它忽略了星期五的“5”并在 06/26(正确)、06/27-06/28-06/29 和 06/ 运行30.谁能提出为什么它忽略了星期五的“5”并且仍然在该范围内的所有日期运行的原因以及如何修复它?

0 1 25-31 1,3,5,7,8,10,12 5 code.pl
0 1 24-30 4,6,9,11        5 code.pl
0 1 22-28 2               5 code.pl

感谢收看!

【问题讨论】:

    标签: unix cron crontab


    【解决方案1】:

    看到这个答案非常相似

    https://superuser.com/questions/348348/crontab-day-of-week-vs-day-of-month

    当您指定星期几和月份中的某一个为真时,将运行。

    您需要使用 cron 时间/日期设置,并在命令中添加条件,例如:

    0 1 22-28 2 * test $(date +%a) = "Fri" && code.pl

    【讨论】:

    • 管理员类型的人,随意删除为骗子
    • 我喜欢这样,但我得到一个“错误的用户名”,将其设置为测试:35 9 24-30 4,6,9 * test $(date +%a) = " Mon" && 用户 cd /var/www/code; perl perl.pl 2>&1 | tee -a error.log
    • 我解决了上面的问题,用户名“user”需要在“&&”之前。
    猜你喜欢
    • 2016-01-26
    • 2013-05-06
    • 1970-01-01
    • 2022-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多