ruby插件/ gem将cron转换为人类可读的格式

是否有一个ruby宝石/插件会将* / 10 * * * 1,3之类的内容转换为“星期一,星期三每10分钟触发一次”?

解决方法

没有什么我知道的,我也没有找到任何与谷歌有关的东西.你可以自己一起破解:
>> cron = "*/10 * * * 1,3 foo" 
#=> "*/10 * * * 1,3 foo"
>> min,hour,dom,month,dow,command = cron.split 
#=> ["*/10","*","1,3","foo"]

拥有vars后,您可以开始为输出组装零件:

>> require 'date' 
#=> true
>> dow.split(/,/).map { |day| Date::DAYNAMES[day.to_i] } 
#=> ["Monday","Wednesday"]
>> min.start_with?('*') ? "every #{min.split('/')[1]} minutes" : "#{min} past" 
#=> "every 10 minutes"
>> min = '5' 
#=> "5"
>> min.start_with?('*') ? "every #{min.split('/')[1]} minutes" : "#{min} past" 
#=> "5 past"

显然,这只是一些粗略的想法(例如,您可能需要使用捕获组的正则表达式来解析条目),但是由于crontab条目已经明确指定,所以要想出适合大多数条目的东西应该不会太难.您可能会遇到的条目.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...