我希望添加一个
crontab
条目来每 30 分钟、整点和整点后 30 分钟或接近的时间执行一个脚本。我有以下,但它似乎不能在0上运行。
*/30 * * * *
我需要使用什么字符串?
cron 正在 OSX 上运行。
做:
0,30 * * * * your_command
crontab 不理解“间隔”,它只理解“时间表”
有效小时: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:00、2:19、2:38、 2:57、3:00 等)
注意:包括作者在内的多个用户对这篇文章进行了一些改进
0,30 * * * * your command goes here
根据官方 Mac OS Xcrontab(5) 手册页
,支持 /
语法。因此,要找出它为什么不适合你,你需要查看 cron 的日志。在这些日志中,您
应该找到明确的失败消息。 注意:Mac OS X 似乎使用 Vixie Cron,与 Linux 和 BSD 相同。
' OR 除 '/' 符号。 但是,“/
”更好。 假设“每 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,...”
所以,可除符号“/”始终是最好的选择;