Langsung ke konten

Buat dan jelaskan ekspresi cron

Susun jadwal cron secara visual, baca artinya dalam bahasa sehari-hari, dan lihat waktu eksekusi berikutnya di zona waktu mana pun. Mendukung sintaks standar, Quartz, dan AWS, langsung di browser Anda.

Dalam bahasa sehari-hari

At 09:30, on Monday through Friday

Preset

Susun secara visual

10 jadwal berikutnya

Menghitung…

Waktu yang terlewati karena perubahan waktu musim panas tidak dijalankan; jam yang berulang dijalankan sekali. Daemon cron sungguhan bisa sedikit berbeda di sini.

Contekan — Standar
KolomNilai yang diizinkan
Menit0–59
Jam0–23
Tanggal1–31
Bulan1–12 atau JAN–DEC
Hari dalam seminggu0–7 (0 dan 7 = Minggu) atau SUN–SAT
SimbolArti
*nilai apa pun
,daftar: 1,15 = tanggal 1 dan 15
-rentang: 1-5 = 1 sampai 5
/langkah: */15 = setiap 15; 5/15 = 5, 20, 35, 50
@dailymakro: @yearly @monthly @weekly @daily @hourly (dan @reboot)

Jika tanggal dan hari dalam seminggu sama-sama dibatasi, cron standar berjalan pada hari yang cocok dengan salah satunya.

Berjalan di browser Anda · tanpa unggahCara kerja

Cara menggunakan Pembuat ekspresi cron

  1. 1

    Pilih dialek

    Pilih cron standar, cron dengan detik, Quartz, atau AWS EventBridge — atau cukup tempel ekspresi dan biarkan jumlah kolom yang menentukan.

  2. 2

    Tulis atau susun jadwal

    Ketik ekspresi, mulai dari preset, atau atur setiap kolom dengan editor visual.

  3. 3

    Baca hasilnya

    Periksa deskripsi dalam bahasa sehari-hari dan kolom yang disorot untuk memastikan artinya sesuai maksud Anda.

  4. 4

    Cek jadwal berikutnya

    Pilih zona waktu dan pastikan 10 waktu eksekusi berikutnya, lalu salin ekspresinya.

Batas dan Pro

Gratis tanpa daftar: 4 dialek, 12 preset, dan 10 waktu eksekusi berikutnya di salah satu dari 400+ zona waktu, dicari hingga 30 tahun ke depan (atau sampai tahun terakhir pada ekspresi).

Pro menghilangkan iklan; builder bekerja sama di semua paket. Lihat Pro

Tentang Pembuat ekspresi cron

Ekspresi cron memadatkan sebuah jadwal ke dalam beberapa kolom yang dipisahkan spasi, dan satu angka yang salah tempat bisa mengubah “setiap hari kerja pukul 9” menjadi “setiap menit pada jam ke-9”. Builder ini memungkinkan Anda menulis atau menempel ekspresi, lalu langsung melihat penjelasannya dalam bahasa sehari-hari, lengkap dengan label di setiap kolom, serta daftar sepuluh waktu eksekusi berikutnya.

Empat dialek didukung karena memang berbeda. Cron standar memiliki lima kolom — menit, jam, tanggal, bulan, dan hari dalam seminggu — dan dipakai oleh crontab, daemon cron Linux, Kubernetes CronJob, serta GitHub Actions; makro seperti @daily juga diterima. Dialek dengan detik menambahkan kolom detik di depan, seperti pada node-cron dan croner. Quartz memakai enam atau tujuh kolom dengan detik dan tahun opsional, menomori hari Minggu sebagai 1, mewajibkan tanda ? di salah satu kolom hari, serta menambahkan L untuk “terakhir”, W untuk “hari kerja terdekat”, dan # untuk “Jumat ketiga”. AWS EventBridge memiliki enam kolom yang diakhiri tahun, memakai aturan hari yang sama dengan Quartz, dan ditulis sebagai cron(…). Menempel ekspresi akan mengganti dialek jika jumlah kolomnya sudah jelas, dan mengganti dialek akan mengonversi isi yang ada bila memungkinkan.

Editor visual mengatur setiap kolom dengan kontrol setiap / setiap N / nilai tertentu / rentang, dan preset mencakup pekerjaan yang umum. Waktu eksekusi dihitung di zona waktu IANA mana pun, dengan memperhitungkan pergeseran waktu musim panas, dan aturan EventBridge memakai UTC secara default sesuai cara AWS mengevaluasinya.

Builder ini hanya memeriksa sintaks dan waktu: ia tidak tahu jam server Anda, eksekusi yang terlewat saat mesin mati, atau batasan khusus penjadwal seperti interval minimum di GitHub.

Privasi

Ekspresi diurai dan waktu eksekusi dihitung oleh kode di halaman ini, memakai data zona waktu browser Anda; tidak ada yang dikirim ke server. Dialek dan zona waktu yang dipilih disimpan di penyimpanan lokal untuk kunjungan berikutnya.

Fitur

Penjelasan dalam bahasa sehari-hari

“Pukul 09.30, pada hari Senin sampai Jumat” — tidak perlu menebak arti 30 9 * * 1-5.

10 jadwal berikutnya, zona apa pun

Waktu eksekusi dalam UTC atau zona waktu IANA mana pun, dengan perubahan waktu musim panas sudah diperhitungkan.

Sintaks Quartz dan AWS

Detik, tahun, ?, L, W, dan # untuk penjadwal yang mendukungnya.

Pembuat ekspresi cron: pertanyaan yang sering diajukan

Mengapa tugas saya berjalan di lebih banyak hari dari yang saya duga?
Pada cron standar, jika kolom tanggal dan kolom hari dalam seminggu sama-sama dibatasi, tugas berjalan saat salah satunya cocok. Jadi 0 9 13 * 5 berjalan setiap tanggal 13 dan juga setiap Jumat, bukan hanya Jumat tanggal 13. Deskripsi di sini menjelaskannya. Quartz dan AWS menghindari kerancuan ini dengan mewajibkan tanda ? di salah satu dari kedua kolom.
Apa arti */15 dalam ekspresi cron?
Garis miring berarti langkah: */15 pada kolom menit berarti setiap 15 menit mulai dari 0, yaitu pada menit :00, :15, :30, dan :45. Nilai awal menggesernya: 5/15 berjalan pada :05, :20, :35, dan :50. Jika digabung dengan rentang, 9-17/2 pada kolom jam berarti setiap dua jam dari pukul 9 sampai 17.
Zona waktu apa yang dipakai cron?
Daemon cron klasik memakai zona waktu lokal server kecuali crontab menetapkan CRON_TZ atau TZ. Kubernetes CronJob memakai zona controller secara default tetapi menerima kolom timeZone, jadwal GitHub Actions berjalan dalam UTC, dan aturan EventBridge selalu memakai UTC, sedangkan EventBridge Scheduler memungkinkan Anda memilih zona. Pilih zona yang sesuai di sini untuk melihat waktu eksekusi sebenarnya.
Apa yang terjadi saat perubahan waktu musim panas?
Saat jam dimajukan, waktu lokal pada jam yang terlewati tidak ada, dan saat jam dimundurkan ada satu jam yang terjadi dua kali. Pratinjau ini melewati waktu yang tidak ada dan menjalankan waktu yang berulang sekali saja. Daemon asli berbeda-beda: Vixie cron dan cronie mencoba menjalankan tugas yang terlewat, jadi untuk tugas pukul 01.00–03.00 waktu lokal, pilih UTC atau baca dokumentasi penjadwal Anda.
Bagaimana cara mengubah baris crontab ke format Quartz atau AWS?
Pilih dialek baru dari daftar dan ekspresi akan dikonversi: kolom detik ditambahkan untuk Quartz, kolom tahun untuk AWS, nomor hari dalam seminggu berpindah dari 0–6 ke 1–7, dan tanda ? ditempatkan di kolom hari yang tidak dipakai. Jika ekspresi asli menetapkan tanggal sekaligus hari dalam seminggu, Anda akan diberi tahu bahwa target tidak dapat mengekspresikan kombinasi itu.