Run Jobs Tuesdays and Thursdays at 8 AM | CronBase

cron expression Standard
$ 0 8 * * 2,4

Every Tuesday and Thursday morning at eight o'clock.

The `0 8 * * 2,4` cron expression schedules a task to run automatically every Tuesday and Thursday at exactly 8:00 AM. This bi-weekly, mid-week cadence is highly effective for generating operational reports, starting morning data synchronization pipelines, or executing routine database maintenance without interfering with weekend or Monday-morning system deployments.

Minute
0
Hour
8
Day of Month
*
Month
*
Day of Week
2,4
How it works

Next 5 Runs

  • in 2d 11h
  • in 4d 11h
  • in 9d 11h
  • in 11d 11h
  • in 16d 11h

* Tools

Code & Implementations

Bash
#!/usr/bin/env bash
# Production-grade cron wrapper for Tuesday/Thursday 8 AM execution
set -euo pipefail
readonly LOG_FILE="/var/log/tue_thu_job.log"
exec >> "$LOG_FILE" 2>&1
echo "[$(date -u +'%Y-%m-%dT%H:%M:%SZ')] Starting scheduled bi-weekly maintenance..."
# Execute main task with proper error checking
if ! /usr/local/bin/backup_script.sh; then
    echo "[ERROR] Maintenance job failed!" >&2
    exit 1
fi
echo "[SUCCESS] Maintenance job completed successfully."
Setup notes

Save this script to /usr/local/bin/tue_thu_job.sh, make it executable with 'chmod +x', and register it in your crontab using '0 8 * * 2,4 /usr/local/bin/tue_thu_job.sh'.

Last verified:

Partner BetterStack

Monitor this schedule in production

Get alerted the moment this cron job fails, is late, or doesn't run. BetterStack tracks execution, duration, and output — no infrastructure required.

Platform Equivalents

AWS EventBridge

Standard cron expressions often need conversion for AWS EventBridge schedules.

EventBridge Rule
cron(0 8 ? * 2,4 *)

Systemd Timer

OnCalendarTue,Thu *-*-* 08:00:00

my-task.timer
[Unit]
Description=Timer for cron expression: 0 8 * * 2,4

[Timer]
OnCalendar=Tue,Thu *-*-* 08:00:00
Persistent=true

[Install]
WantedBy=timers.target

Last verified:

Frequently Asked Questions

How do I handle daylight saving time shifts for this 8:00 AM job?

If your system runs on UTC, the job will shift relative to your local time when DST starts or ends. To maintain a strict 8:00 AM local time, run your cron engine within a timezone-aware scheduler (like node-cron or Kubernetes with spec.timeZone) set to your local timezone.

Will this cron expression run on holidays if they fall on a Tuesday or Thursday?

Yes, standard cron does not have built-in awareness of public holidays. If you need to skip holidays, you must implement a check within your application logic to verify if the current date is a holiday and exit gracefully.

What happens if a previous Tuesday run is still running when Thursday 8:00 AM arrives?

Standard cron will launch the Thursday job regardless of the Tuesday job's status. To prevent concurrent executions, use locking mechanisms such as flock in Bash, a distributed lock (e.g., Redis), or set concurrencyPolicy: Forbid in Kubernetes.

How does day-of-week numbering work across different cron engines for 2,4?

In standard cron, 2 represents Tuesday and 4 represents Thursday. While most modern systems (like Vixie cron, Go, and Kubernetes) agree on this, some legacy systems might treat 1 as Sunday. Always verify your specific environment's cron documentation.

Can I run this job on Tuesdays and Thursdays only during specific months?

Yes, you can replace the fourth field (month) with specific months. For example, '0 8 * 1-6 2,4' will run the job at 8:00 AM on Tuesdays and Thursdays only from January through June.

* Explore

Related expressions you might need

Last verified:

Was this helpful?