Biểu thức cron: mỗi 15 phút trong giờ làm việc

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

Cập nhật

*/15 9-17 * * 1-5
Biểu thức cron
Mỗi 15 phút trong giờ làm việc
Lịch chạy

Mở trong Trình tạo biểu thức Cron →

Ý nghĩa của */15 9-17 * * 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 15 phút trong giờ làm việc, các trường như sau:

TrườngGiá trịÝ nghĩaGiá trị cho phép
Phút*/15mỗi 15 phút0–59
Giờ9-17từ 09:00 đến 17: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-5từ thứ Hai đến thứ Sáu0–6 (Chủ nhật–Thứ bảy)

Thời gian 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. Bật JavaScript để xem thời gian chạy tiếp theo.

Các trường hợp sử dụng phổ biến

  • Thăm dò dữ liệu khi nhân viên đang làm việc
  • Đồng bộ thường xuyên mà không gây tải vào ban đêm

Điều cần biết

Lần chạy cuối cùng trong ngày là 17:45, vì trường giờ 9-17 bao gồm mọi phút từ 17:00 đến 17:59.

Cách dùng trong crontab, GitHub Actions, Kubernetes và Node.js

crontab (crontab -e):

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

GitHub Actions (thời gian tính theo UTC):

on:
  schedule:
    - cron: '*/15 9-17 * * 1-5'

Kubernetes CronJob:

apiVersion: batch/v1
kind: CronJob
metadata:
  name: my-job
spec:
  schedule: "*/15 9-17 * * 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('*/15 9-17 * * 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 15 phút trong giờ làm việc là gì?
*/15 9-17 * * 1-5. Chạy mỗi 15 phút; từ 09:00 đến 17: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 Trình tạo biểu thức Cron để xem bằng ngôn ngữ dễ hiểu kèm thời gian chạy tiếp theo, sau đó kiểm tra nhật ký công việc sau lần chạy đầu tiên.