我希望添加一个crontab
条目以每 30 分钟、每小时和每小时 30 分钟或接近的时间执行一次脚本。我有以下内容,但它似乎没有在 0 上运行。
*/30 * * * *
我需要使用什么字符串?
cron 在 OSX 上运行。
做:
0,30 * * * * your_command
crontab 不理解“intervals”,它只理解“schedule”
有效时间:0-23 -- 有效分钟:0-59
示例 #1
30 * * * * your_command
这意味着“在每小时的分钟为 30时运行”(将在:1:30、2:30、3:30 等运行)
示例 #2
*/30 * * * * your_command
这意味着“当每小时的分钟可以被 30 整除时运行”(将在:1:30、2:00、2:30、3:00 等运行)
例子#3
0,30 * * * * your_command
这意味着“在每小时的分钟为 0 或 30时运行”(将在:1:30、2:00、2:30、3:00 等运行)
这是完成与示例 #2 相同结果的另一种方法
例子#4
19 * * * * your_command
这意味着“在每小时的分钟为 19时运行”(将在以下时间运行:1:19、2:19、3:19 等)
示例 #5
*/19 * * * * your_command
这意味着“当每小时的分钟可以被 19 整除时运行”(运行时间为:1:19、1:38、1:57、2:19、2:38、2:57 等)
注意:包括作者在内的各种用户对这篇文章进行了一些改进
试试这个:
0,30 * * * * your command goes here
根据官方 Mac OS X crontab(5) 手册页,/
支持该语法。因此,要弄清楚为什么它不适合您,您需要查看 cron 的日志。在这些日志中,您应该会找到明确的失败消息。
注意:Mac OS X 似乎使用 Vixie Cron,与 Linux 和 BSD 相同。
如果您的 cron 作业仅在 Mac OS X 上运行,您可能需要使用 launchd。
注意:虽然它仍然受支持,但 cron 不是推荐的解决方案。它已被弃用,取而代之的是 launchd。
您可以通过简单的网络搜索找到其他信息(例如已启动的Wikipedia 页面)。
你提到你使用的是 OS X——我过去使用过 cronnix。它不像自己编辑那样令人讨厌,但它帮助我了解了这些列的内容。只是一个想法。
您可以同时使用 ' 、 '或除 ' / ' 符号。
但是,' / ' 更好。
假设“每 5 分钟”的情况。如果使用 ' , ',则必须编写 cron 作业,如下所示:
0,5,10,15,20,25,30,35,.... * * * * your_command
这意味着在所有定义的分钟内每小时运行 your_command:0,5,10,...
但是,如果使用“/”,则可以编写以下简单而简短的作业:
*/5 * * * * your_command
这意味着在可被 5 整除的分钟内运行 your_command 或用更简单的词 '0,5,10,...'
所以,可分符号 '/' 始终是最佳选择;