Я ничего не знаю, и я тоже ничего не нашел с Google.Вы можете самостоятельно что-то взломать, хотя:
>> 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 хорошо определены, не должно быть слишком сложно придумать что-то, что работает для большинства записей, которые выскорее всего, столкнуться.