Có ruby gem/plugin sẽ chuyển đổi thứ gì đó như */10 * * * 1,3 thành "Triggers cứ 10 phút một lần vào thứ Hai, thứ Tư" không?ruby plugin/gem để chuyển đổi cron thành định dạng có thể đọc được của con người
Trả lời
Tôi không biết gì và tôi cũng không tìm thấy bất kỳ thứ gì với Google. Bạn có thể hack một cái gì đó cùng nhau một mình mặc dù:
>> cron = "*/10 * * * 1,3 foo"
#=> "*/10 * * * 1,3 foo"
>> min, hour, dom, month, dow, command = cron.split
#=> ["*/10", "*", "*", "*", "1,3", "foo"]
Khi bạn có vars, bạn có thể bắt đầu lắp ráp các bộ phận cho đầu ra của bạn:
>> 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"
Rõ ràng đó chỉ là một số ý tưởng thô (ví dụ bạn có thể muốn một regex với các nhóm chụp để phân tích cú pháp mục nhập), nhưng vì các mục nhập crontab được xác định rõ, nên không quá khó để tìm ra thứ gì đó phù hợp với hầu hết các mục bạn có khả năng gặp phải.
Đây là những gì bạn đang tìm kiếm :)
Hai ví dụ là tốt đẹp, nhưng trong PHP và Javascript (tương ứng) như vậy sẽ phải chuyển đổi sang Ruby để đáp ứng nhu cầu của người hỏi. – rlandster
tôi đã viết một viên ngọc Ruby để làm điều này, dựa trên kịch bản Perl Sean Burke:
Hãy xem xét đá quý của Ruby gem https://github.com/alpinweis/cronex
- 1. Cron đến chuỗi có thể đọc được của con người
- 2. Chuyển đổi chuỗi octet snmp thành định dạng ngày có thể đọc được của con người
- 3. Định dạng ngày có thể đọc được bằng con người
- 4. Chuyển đổi dấu ngày/giờ của lịch sử Chrome thành định dạng có thể đọc được
- 5. Chuyển đổi đối tượng lớp thành chuỗi có thể đọc được của con người
- 6. chuyển đổi micro giây thành thời gian có thể đọc được của con người
- 7. Làm thế nào để chuyển đổi xsd thành tài liệu có thể đọc được của con người?
- 8. Chuyển đổi mili giây để thời gian có thể đọc được con người trôi đi
- 9. Python - Chuyển đổi thời gian epoch với nano giây thành con người có thể đọc được?
- 10. CronExpressions - bất kỳ thư viện nào ở đó để tạo chúng/chuyển đổi chúng thành dạng có thể đọc được của con người?
- 11. Java chuyển đổi dòng nhân vật thành con người "có thể đọc được" Chuỗi
- 12. Sắp xếp theo định dạng văn bản có thể đọc được của con người
- 13. Chuyển tập tin llvm .bc thành tập tin .ll có thể đọc được của con người
- 14. GUID có thể đọc được của con người
- 15. Làm thế nào để chuyển đổi currentTimeMillis sang định dạng ngày có thể đọc được?
- 16. Định dạng ngày có thể đọc và phân tích cú pháp của con người trong Java
- 17. type_info.name có thể đọc được của con người()
- 18. dấu thời gian có thể đọc được của con người trong hạt nhân Linux
- 19. Làm thế nào để có được tên lớp có thể đọc được của con người trong Ruby on Rails?
- 20. Chuyển đổi dữ liệu có thể định dạng thành PDF
- 21. chuyển đổi dấu thời gian Epoch sang máy chủ sql (định dạng có thể đọc được)
- 22. Bất kỳ tiện ích chung hoặc thư viện nào để chuyển đổi các khối Hex thành dạng có thể đọc được bằng con người?
- 23. Địa chỉ IP C++ Dạng người có thể đọc được
- 24. Chuyển đổi giờ địa phương (10 chữ số) thành định dạng ngày giờ có thể đọc được
- 25. Chuyển đổi dấu thời gian unix thành ngày có thể đọc được bằng PHP?
- 26. Chuyển đổi ngày giờ thành định dạng được chỉ định
- 27. Khoảng thời gian có thể đọc được tự động của con người
- 28. Cassandra cli: Chuyển đổi giá trị hex sang một định dạng có thể đọc được
- 29. Chuyển đổi Lịch thành XMLGregorianCalendar với định dạng cụ thể
- 30. Làm thế nào để chuyển đổi ngày hex 'YMD' thành một ngày có thể đọc được?
nó không chính xác những gì bạn muốn, nhưng có lẽ nó sẽ giúp: https://github.com/javan/wheverever –