The generator says weekday 1-5
On Vixie cron and cronie, 0 9 * * 1-5 is 09:00 Monday through Friday. Monday is 1 and Friday is 5. The generator's sentence is "at minute 0, at hour 9, on weekday 1-5".
The sentence the generator writes for 0 9 * * 1-5 is "at minute 0, at hour 9, on weekday 1-5". On Vixie cron and cronie those numbers are Monday through Friday, at 09:00. Monday is 1. Friday is 5. Sunday is 0 and also 7. A scheduler that accepts only 0 for Sunday needs crontab(5) on that host before 7 is used.
These are the four lines beside it in the guide.
0 * * * * # every hour, at minute 0
0 0 * * * # every day at 00:00
0 9 * * * # every day at 09:00
0 9 * * 1-5 # Monday through Friday at 09:00
The hourly line starts 24 times. Midnight starts once. 0 9 * * * still runs on Saturday and Sunday. 0 9 * * 1-5 stops after Friday. The hour belongs to the daemon's timezone. Vixie cron documents CRON_TZ for one crontab, and the host's own crontab(5) is where that setting is confirmed.
A lone 5 is Friday. For 0 9 * * 5 the generator says "at minute 0, at hour 9, on Friday". The hyphen in 1-5 is what stretches the field from Monday through Friday.
Both day fields have to be restricted before the either-day rule applies. 0 9 1 * 5 is that shape. A field that begins with *, and */2 is one of those, stays unrestricted, so 0 9 * * 1-5 remains a weekday line. The cron expression generator shows the five fields on the page. Copy the line into the crontab on the machine that will run it.
The either-day writeup is https://kepttools.com/guides/cron-both-day-fields
The field table is in the guide: https://kepttools.com/guides/cron-every-5-minutes
Comments
Join the discussionThis is the kind of small, exact post that saves someone a Saturday morning. The trap is exactly the one you name: 0 9 * * * looks like a weekday job until it fires on a Saturday and sends a reminder nobody wanted.
I like the generator sentence being literal, not clever — "at minute 0, at hour 9, on weekday 1-5" leaves nothing to guess. The timezone note is the other one worth checking before you trust any schedule: 09:00 in the daemon's timezone is not always 09:00 where your customers are.
Thanks, Steven. That Saturday run is the star in the day-of-month: 0 9 * * * is 09:00 every day. 0 9 * * 1-5 is the line that leaves Saturday and Sunday out. The generator stays with the numbers: "at minute 0, at hour 9, on weekday 1-5". 09:00 is the daemon's timezone, so it can be a different hour for the people who get the reminder.


