Cron Reference

Cron Every Hour on Weekdays (9 AM–5 PM)

Cron expression 0 9-17 * * 1-5 means At at minute 0, between 9:00 AM and 5:00 PM, Monday through Friday.

Cron expression to run a job every hour during business hours on weekdays: 0 9-17 * * 1-5. Fires at the top of each hour from 9 AM to 5 PM, Monday through Friday.

Cron Expression

0 9-17 * * 1-5
0Minute
9-17Hour
*Day
*Month
1-5Weekday

Common use cases

  • Generating hourly status snapshots during the business day
  • Refreshing on-call incident dashboards once per hour
  • Syncing CRM data with external tools during working hours
  • Sending hourly digest notifications to business users

Want to customize this schedule?

Open it in the visual builder to tweak the expression interactively.

Open in Builder

Need to monitor this cron job?

Cronhub tracks your scheduled jobs and alerts you if they fail or run late.

Monitor with Cronhub

Platform usage examples

Linux / Unix — crontab
# Edit your crontab
crontab -e

# Add this line to run every hour on weekdays (9 am–5 pm)
0 9-17 * * 1-5 /usr/bin/php /var/www/html/script.php

# Or run a shell script
0 9-17 * * 1-5 /home/user/scripts/job.sh >> /var/log/job.log 2>&1
GitHub Actions
# .github/workflows/scheduled.yml
name: Scheduled Job

on:
  schedule:
    - cron: '0 9-17 * * 1-5'

jobs:
  run:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Run job
        run: echo "Running every hour on weekdays (9 am–5 pm)"
Kubernetes CronJob
apiVersion: batch/v1
kind: CronJob
metadata:
  name: my-scheduled-job
spec:
  schedule: "0 9-17 * * 1-5"
  jobTemplate:
    spec:
      template:
        spec:
          containers:
          - name: job
            image: my-image:latest
          restartPolicy: OnFailure

Related developer tools

More free tools for engineering workflows that pair with scheduled jobs:

Frequently asked questions

What is the cron expression for every hour on weekdays (9 am–5 pm)?

The cron expression is 0 9-17 * * 1-5. Cron expression to run a job every hour during business hours on weekdays: 0 9-17 * * 1-5. Fires at the top of each hour from 9 AM to 5 PM, Monday through Friday.

How do I schedule a cron job to run every hour on weekdays (9 am–5 pm) in Linux?

Open your crontab with "crontab -e" and add a new line: 0 9-17 * * 1-5 /path/to/your/script.sh — this schedules your script to run every hour on weekdays (9 am–5 pm). Save and exit; the cron daemon picks up the change immediately.

What does the cron expression "0 9-17 * * 1-5" mean?

Cron expression to run a job every hour during business hours on weekdays: 0 9-17 * * 1-5. Fires at the top of each hour from 9 AM to 5 PM, Monday through Friday.

Can I use "0 9-17 * * 1-5" in GitHub Actions?

Yes. In your workflow YAML, set the schedule trigger: on: schedule: - cron: '0 9-17 * * 1-5'. GitHub Actions uses standard 5-field Unix cron syntax, so this expression works as-is.

Related cron schedules

More Free Developer Tools