我希望添加一个crontab条目,以便每隔30分钟、整点和整点后30分钟执行一个脚本。我有以下,但它似乎不运行在0。
*/30 * * * *
我需要使用什么字符串?
cron在OSX上运行。
我希望添加一个crontab条目,以便每隔30分钟、整点和整点后30分钟执行一个脚本。我有以下,但它似乎不运行在0。
*/30 * * * *
我需要使用什么字符串?
cron在OSX上运行。
试试这个:
0,30 * * * * your command goes here
根据Mac OS X crontab(5)官方手册,支持/语法。因此,要弄清楚为什么它不适合您,您需要查看cron的日志。在这些日志中,您应该会发现一条清晰的失败消息。
注意:Mac OS X似乎使用Vixie Cron,与Linux和bsd相同。
如果你的cron作业只在Mac OS X上运行,你可能想使用launchd代替。
来自Scheduling Timed Jobs(苹果官方文档):
注意:尽管仍然支持cron,但cron不是推荐的解决方案。它已被弃用,而支持launchd。
您可以通过简单的网络搜索找到其他信息(例如launchd维基百科页面)。
Crontab不理解"interval ",它只理解"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:00,2:19,2:38,2:57,3:00等时间运行)
注意:包括作者在内的不同用户对这篇文章进行了一些改进
你可以同时使用','或除'/'符号。但是,'/'更好。假设“每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,…' 所以,可分割符号'/'总是最好的选择;