Ekspresi cron: setiap 15 menit pada jam kerja

*/15 9-17 * * 1-5 berjalan setiap 15 menit pada jam kerja. Berikut arti tiap field, kapan jadwal berikutnya berjalan, dan cara memakainya di crontab, GitHub Actions, Kubernetes, dan Node.js.

Diperbarui

*/15 9-17 * * 1-5
Ekspresi cron
Setiap 15 menit pada jam kerja
Jadwal

Buka di Cron Expression Generator →

Arti */15 9-17 * * 1-5

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

FieldNilaiArtiRentang
Menit*/15setiap 15 menit0–59
Jam9-1709:00 sampai 17:000–23
Tanggal*setiap tanggal dalam bulan1–31
Bulan*setiap bulan1–12
Hari dalam seminggu1-5Senin sampai Jumat0–6 (Min–Sab)

Jadwal berikutnya

Dihitung di browser kamu untuk zona waktu kamu. Di server, cron memakai zona waktu server (biasanya UTC).

  1. Aktifkan JavaScript untuk melihat waktu jalan berikutnya.

Penggunaan umum

  • Polling saat karyawan sedang bekerja
  • Sinkronisasi rutin tanpa beban di malam hari

Perlu diketahui

Jadwal terakhir dalam sehari berjalan pukul 17:45, karena field jam 9-17 mencakup setiap menit dari 17:00 sampai 17:59.

Pakai di crontab, GitHub Actions, Kubernetes, dan 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 (waktu dalam 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
});

Jadwal terkait

Pertanyaan yang sering diajukan

Apa ekspresi cron untuk setiap 15 menit pada jam kerja?
*/15 9-17 * * 1-5. Jadwal ini berjalan setiap 15 menit, dari pukul 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 kamu mengatur spec.timeZone (misalnya Europe/Berlin).
Bagaimana cara menguji ekspresi cron?
Tempel ekspresinya ke Cron Expression Generator untuk melihatnya dalam bahasa sehari-hari beserta waktu jalan berikutnya, lalu periksa log job kamu setelah eksekusi terjadwal pertama.