Công cụ này làm gì
Biểu thức cron là cách viết gọn một lịch chạy: */5 * * * * nghĩa là "mỗi 5 phút", còn 0 9 * * 1-5 là "lúc 9:00 các ngày trong tuần". Nó được dùng trong crontab của Linux, hệ thống CI, trình lập lịch container và nhiều thư viện, và rất dễ viết sai một cách tinh vi. Công cụ này đọc biểu thức như một bộ lập lịch, giải thích bằng tiếng Việt, tách từng trường và liệt kê 10 lần chạy tiếp theo theo múi giờ bạn chọn. Biểu thức không rời khỏi trình duyệt.
Các trường
Có năm trường, cách nhau bằng dấu cách: phút (0-59), giờ (0-23), ngày trong tháng (1-31), tháng (1-12 hoặc JAN-DEC), ngày trong tuần (0-7, trong đó 0 và 7 đều là Chủ nhật, hoặc SUN-SAT). Thêm một trường ở đầu thì trường đó là giây, như trong Spring và Quartz. Mỗi trường nhận * cho mọi giá trị, một số, danh sách như 1,15, khoảng như 9-17 và bước như */15 (mỗi 15 đơn vị) hay 10-30/5. Các lối tắt @hourly, @daily, @weekly, @monthly, @yearly cũng được hiểu.
Ngày trong tháng và ngày trong tuần
Khi cả hai trường này đều được đặt, cron cổ điển chạy khi một trong hai khớp, không cần cả hai. Vì vậy 0 0 13 * 5 không có nghĩa "thứ Sáu ngày 13": nó chạy vào mọi ngày 13 và mọi thứ Sáu. Trong tháng 10/2026, lịch này chạy vào ngày 2, 9, 13, 16, 23 và 30. Nếu một trong hai trường bắt đầu bằng * thì chỉ trường còn lại được xét.
Múi giờ và giờ mùa hè
Biểu thức cron không có múi giờ riêng, bộ lập lịch dùng múi giờ của máy hoặc của dịch vụ. Hãy chọn đúng múi giờ đó. Khi đồng hồ nhảy tới, giờ bị bỏ qua không tồn tại nên công việc đặt lúc 02:30 bị bỏ qua hôm đó; khi đồng hồ lùi lại, một thời điểm như 01:30 xảy ra hai lần và công việc chỉ chạy một lần, lần đầu tiên. Các bộ lập lịch thật có thể khác nhau ở điểm này.
Không được hỗ trợ
Các ký tự ?, L, W, # và trường năm là của Quartz và Spring, không phải cron cổ điển. Công cụ báo rõ thay vì đoán; hãy viết lại bằng các trường thông thường.
Để kiểm tra mẫu dòng trong nhật ký, hãy dùng kiểm tra regex; để so hai phiên bản crontab, dùng so sánh văn bản.