gpt4 book ai didi

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

转载 作者:数据小太阳 更新时间:2023-10-29 06:59:49 26 4
gpt4 key购买 nike

是否有 ruby​​ gem/插件可以将 */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"]

一旦你有了变量,你就可以开始组装输出的部分了:

>> 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 条目已明确指定,因此想出一些适用于您可能会遇到的大多数条目。

关于ruby 插件/gem 将 cron 转换为人类可读的格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5745185/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com