Linux

在不同時間生成自動 cron 作業

  • May 23, 2012

問候我是 cron 的新手。是否可以每小時隨機執行幾分鐘的自動 cron 作業?

語法應該每天都不同,例如:

34,57,44,30,37,31,38,30,44,35,36,56,46,55,54,40,45,44,42,35,50,59,48,34,52,* * * * *

據我所知,上面的程式碼將在 0:34、01:57、02:44…. 到 23:52 發送 cron 作業。我目前正在用 PHP 生成語法,但我不確定如何將它發送到 cron 命令或者它是否安全。請告知如何做到這一點。

您可以延遲使用靜態 cronjob:

0 *    * * *   user    sleep $(($RANDOM % 59))m; my_command

(未經測試,但應該工作)

由於末尾的無界萬用字元,您提供的程式碼將每分鐘執行一次。cron 條目的整個第一個欄位只是 cron 將匹配以檢查它是否應該執行程序的分鐘值的列表。

Cron 還簡單地對時間值進行取模。將分鐘除以 11 可以讓 cron 在每小時的 :00、:11、:22、:33、:44 和 :55 分鐘標記處啟動它。

引用自:https://serverfault.com/questions/391660