cron expression · plain english
Cron every weekend
Fires at 09:00 Saturday and Sunday only — weekday-skipping schedule. Used for low-priority maintenance jobs that shouldn't run during weekday business hours.
intermediate
POSIX / Jenkins / Quartz / AWS
0 9 * * 0,6
cron every weekend.
Next 5 fire times
Computed live in your local timezone. The cron expression itself is timezone-agnostic — these times reflect your browser clock.
Cross-system syntax variants
Same intent, different schedulers. Use this table when migrating between systems.
| System | Expression | Note |
|---|---|---|
| Standard cron (POSIX) | 0 9 * * 0,6 | DOW 0=Sunday, 6=Saturday |
| Cron (named alt) | 0 9 * * SAT,SUN | named days — order doesn't matter |
| Cron (range) | 0 9 * * 6-7 | ONLY works on systems where 7=Sunday (some BSDs); avoid |
| Jenkins | H 9 * * SAT,SUN | comma list |
| Quartz (Java) | 0 0 9 ? * SAT,SUN | Quartz uses 1=SUN, 7=SAT — but SAT,SUN names work |
| systemd timer | OnCalendar=Sat,Sun 09:00 | comma list |
| AWS EventBridge | cron(0 9 ? * SAT,SUN *) | Quartz-flavor |
Common pitfalls
- DOW 0 vs 7 for Sunday: POSIX cron accepts both, but `0,6` works everywhere; `6,7` is ambiguous.
- If you migrate Quartz → POSIX (or vice versa), DOW numbers shift. Always use named days for portability.
- Weekend ≠ off-hours globally — Saturday is a workday in some Middle East / Israel contexts. Adjust if you have international audience.
Use cases
- Heavy-cost maintenance job (DB vacuum, index rebuild)
- Weekend-only data warehouse refresh
- Low-priority ETL batch
- Off-peak content recompilation
Translate any cron expression
cronwtf takes any cron string and returns plain-English description plus the next 5 fire times in your timezone. Standard 5-field, Jenkins H, Quartz 6-field — all supported.
Open cronwtf
Related cron schedules
cron on the last day of every month (quartz only) · how to run a cron job every 10 minutes · how to run cron daily at midnight · cron every 15 min during business hours