Ekspresi cron: setiap jam saat jam kerja

0 9-17 * * 1-5 berjalan setiap jam saat jam kerja. Berikut arti setiap field, kapan jalan berikutnya, dan cara memakainya di crontab, GitHub Actions, Kubernetes, serta Node.js.

Diperbarui

0 9-17 * * 1-5
Ekspresi cron
Setiap jam saat jam kerja
Jadwal

Buka di Generator Ekspresi Cron →

Arti 0 9-17 * * 1-5

Cron membaca lima field dari kiri ke kanan: menit, jam, tanggal dalam bulan, bulan, dan hari dalam minggu. Untuk setiap jam saat jam kerja, nilainya adalah:

FieldNilaiArtiRentang
Menit000–59
Jam9-1709:00 sampai 17:000–23
Tanggal dalam bulan*setiap tanggal dalam bulan1–31
Bulan*setiap bulan1–12
Hari dalam minggu1-5Senin sampai Jumat0–6 (Min–Sab)

Jadwal berikutnya

Dihitung di browser Anda untuk zona waktu Anda. Di server, cron memakai zona waktu server (sering UTC).

  1. Aktifkan JavaScript untuk melihat waktu jalan berikutnya.

Penggunaan umum

  • Sinkronisasi selama jam kantor
  • Menyegarkan dashboard saat orang sedang memakainya

Perlu diketahui

Berjalan tepat di awal setiap jam dari pukul 9:00 sampai 17:00, Senin sampai Jumat.

Cara memakainya di crontab, GitHub Actions, Kubernetes, dan Node.js

crontab (crontab -e):

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

GitHub Actions (waktu dalam UTC):

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

Kubernetes CronJob:

apiVersion: batch/v1
kind: CronJob
metadata:
  name: my-job
spec:
  schedule: "0 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('0 9-17 * * 1-5', () => {
  // your job
});

Jadwal terkait

Pertanyaan yang sering diajukan

Apa ekspresi cron untuk setiap jam saat jam kerja?
0 9-17 * * 1-5. Berjalan pada menit 0; 09:00 sampai 17:00; Senin sampai Jumat.
Zona waktu apa yang dipakai cron?
Cron klasik memakai zona waktu lokal server, dan banyak server berjalan dengan UTC. GitHub Actions selalu memakai UTC. CronJob Kubernetes memakai zona waktu controller kecuali Anda mengatur spec.timeZone (misalnya Europe/Berlin).
Bagaimana cara menguji ekspresi cron?
Tempel ekspresinya ke Generator Ekspresi Cron untuk melihatnya dalam bahasa sehari-hari beserta waktu jalan berikutnya, lalu periksa log job Anda setelah jadwal pertama berjalan.