Biểu thức cron: mỗi ngày làm việc lúc 9 giờ sáng

0 9 * * 1-5 chạy mỗi ngày làm việc lúc 9 giờ sáng. Dưới đây là ý nghĩa từng trường, lần chạy tiếp theo và cách dùng trong crontab, GitHub Actions, Kubernetes và Node.js.

Cập nhật

0 9 * * 1-5
Biểu thức cron
Mỗi ngày làm việc lúc 9 giờ sáng
Lịch chạy

Mở trong Cron Expression Generator →

Ý nghĩa của 0 9 * * 1-5

Cron đọc năm trường từ trái sang phải: phút, giờ, ngày trong tháng, tháng và thứ trong tuần. Với mỗi ngày làm việc lúc 9 giờ sáng, các trường như sau:

TrườngGiá trịÝ nghĩaCho phép
Phút000–59
Giờ909:000–23
Ngày trong tháng*mỗi ngày trong tháng1–31
Tháng*mỗi tháng1–12
Thứ trong tuần1-5Thứ Hai đến thứ Sáu0–6 (Chủ nhật–Thứ Bảy)

Lần chạy tiếp theo

Được tính trong trình duyệt của bạn theo múi giờ của bạn. Trên máy chủ, cron dùng múi giờ của máy chủ (thường là UTC).

  1. Hãy bật JavaScript để xem thời gian chạy tiếp theo.

Các trường hợp thường gặp

  • Báo cáo vào ngày làm việc
  • Nhắc nhở cho cả nhóm
  • Mở hàng đợi hỗ trợ khách hàng

Cần biết

Từ thứ Hai đến thứ Sáu. Các ngày trong tuần được đánh số 0–6, bắt đầu từ Chủ nhật (7 cũng là Chủ nhật trong hầu hết các triển khai cron).

Dùng trong crontab, GitHub Actions, Kubernetes và Node.js

crontab (crontab -e):

0 9 * * 1-5 /usr/local/bin/my-job.sh >> /var/log/my-job.log 2>&1

GitHub Actions (giờ theo UTC):

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

Kubernetes CronJob:

apiVersion: batch/v1
kind: CronJob
metadata:
  name: my-job
spec:
  schedule: "0 9 * * 1-5"
  concurrencyPolicy: Forbid
  jobTemplate:
    spec:
      template:
        spec:
          restartPolicy: OnFailure
          containers:
            - name: my-job
              image: alpine:3
              command: ["sh", "-c", "echo running"]

Node.js (node-cron):

import cron from 'node-cron';
cron.schedule('0 9 * * 1-5', () => {
  // your job
});

Lịch liên quan

Câu hỏi thường gặp

Biểu thức cron cho mỗi ngày làm việc lúc 9 giờ sáng là gì?
0 9 * * 1-5. Chạy ở phút 0; 09:00; từ thứ Hai đến thứ Sáu.
Cron dùng múi giờ nào?
Cron truyền thống dùng múi giờ địa phương của máy chủ, và nhiều máy chủ chạy theo UTC. GitHub Actions luôn dùng UTC. Kubernetes CronJob dùng múi giờ của controller, trừ khi bạn đặt spec.timeZone (ví dụ Europe/Berlin).
Làm sao để kiểm tra biểu thức cron?
Dán biểu thức vào Cron Expression Generator để xem bằng ngôn ngữ đời thường cùng thời gian chạy tiếp theo, rồi kiểm tra log của job sau lần chạy đầu tiên theo lịch.