ShareYourGroupShareYourGroupCron Helper

Cron expression for weekends only

At 10:00, on weekends (Saturday and Sunday).

Five fields for Linux, GitHub Actions and Kubernetes (minute hour day month weekday). Six or seven for Quartz. Nothing you type leaves your device.

What it means and when to use it

A list in the day-of-week field separates days with commas. Saturday is 6 and Sunday is 0 (or 7), so 6,0 or SAT,SUN means the two weekend days. Weekend-only schedules fit maintenance work that must not touch the working week, bulk imports, or a weekly digest for a hobby community that reads on Saturday morning.

Watch out for this

Order does not matter in a list, so 0,6 and 6,0 are the same. The big trap is the numbering: Quartz counts Sunday as 1 and Saturday as 7, so weekends there are 1,7, and copying 6,0 into a Quartz expression gives an error (0 is not allowed) or the wrong days. Writing names (SAT,SUN) is safe in every system and is easier to read in six months.

What each field says

FieldWrittenMeans
Minute00
Hour1010
Day of month*every day of the month
Month*every month
Day of week6,0Sun, Sat

An example of the next runs

If it were Friday 13 November 2026 at 10:20 UTC, the next six runs would be these. Times are shown in UTC and in India time (UTC+5:30).

UTCIndia time
Sat 14 Nov, 10:00Sat 14 Nov, 15:30
Sun 15 Nov, 10:00Sun 15 Nov, 15:30
Sat 21 Nov, 10:00Sat 21 Nov, 15:30
Sun 22 Nov, 10:00Sun 22 Nov, 15:30
Sat 28 Nov, 10:00Sat 28 Nov, 15:30
Sun 29 Nov, 10:00Sun 29 Nov, 15:30

The same schedule in other places

Quartz

Quartz has a seconds field in front, uses ? in one day field, and counts Sunday as 1:

0 0 10 ? * 7,1

GitHub Actions

Scheduled workflows run in UTC unless you add a time zone. In the workflow file:

on:
  schedule:
    - cron: '0 10 * * 6,0'

Kubernetes CronJob

In a CronJob manifest the schedule goes in spec.schedule. Without spec.timeZone, it is read in the time zone of the cluster's controller:

spec:
  schedule: "0 10 * * 6,0"
  timeZone: "Etc/UTC"

A crontab line to copy

The command is made up. Replace it with your own and use full paths:

0 10 * * SAT,SUN /home/me/bin/weekend-digest.sh >> /home/me/weekend.log 2>&1

Questions

Do all cron programs accept names like SAT?

Vixie-style cron documents three-letter names in any case. GitHub Actions lists SUN-SAT. Kubernetes lists sun to sat in lower case. Quartz uses SUN-SAT.

This is an independent guide and tool. It is not connected with crontab.guru, Quartz, GitHub, Kubernetes, Spring or the Linux projects named here. Product names belong to their owners.