Penjana Ekspresi Cron

Ekspresi cron mempunyai lima medan: minit, jam, haribulan, bulan dan hari dalam minggu. "0 9 * * 1-5" bermaksud Pada pukul 09:00, pada hari Isnin hingga Jumaat, dan "*/15 * * * *" bermaksud Setiap 15 minit.

Hari dalam minggu
Maksud

5 larian seterusnya

    Adakah masalah anda selesai?
    Pilih kami di Google

    Cara guna

    1. Taip ekspresi cron dalam kotak teratas, pilih pratetap, atau isi lima medan satu demi satu. Kotak dan medan sentiasa selari.
    2. Gunakan butang hari untuk memilih hari dalam minggu tanpa menaip nombor.
    3. Baca maksudnya dalam bahasa biasa di bawah Maksud, kemudian semak 5 waktu larian seterusnya. Tukar antara zon waktu tempatan anda dan UTC supaya sepadan dengan pelayan anda.
    4. Tekan Salin untuk menyalin ekspresi ke crontab, jadual CI atau penjadual kerja anda.

    Cara kiraan

    Ekspresi cron piawai mempunyai lima medan yang dipisahkan ruang: minit (0-59), jam (0-23), haribulan (1-31), bulan (1-12 atau JAN-DEC) dan hari dalam minggu (0-6 atau SUN-SAT, dengan 0 dan 7 kedua-duanya bermaksud Ahad).

    Setiap medan menerima bintang untuk setiap nilai, senarai seperti 1,15, julat seperti 9-17, dan langkah seperti */5 (setiap nilai ke-5) atau 10-30/5. Nama dibenarkan untuk bulan dan hari, dan makro @hourly, @daily, @weekly, @monthly dan @yearly dikembangkan kepada bentuk lima medannya.

    Apabila haribulan dan hari dalam minggu kedua-duanya dihadkan, seperti dalam "0 0 13 * 5", cron menjalankan kerja apabila salah satu sepadan, jadi contoh itu berjalan pada setiap 13hb dan pada setiap hari Jumaat. Jika salah satu daripada dua medan itu bermula dengan bintang, kedua-duanya mesti sepadan.

    Waktu larian seterusnya dicari dengan bergerak ke hadapan hari demi hari, mengekalkan hari yang sepadan dengan peraturan bulan dan hari, kemudian menyenaraikan jam dan minit yang sepadan. Jadual yang tidak pernah sepadan, seperti 31 Februari, tidak menunjukkan larian akan datang. Waktu tempatan yang tidak wujud kerana lompatan waktu siang dilangkau.

    Jadual biasa

    EkspresiMaksud
    * * * * *Setiap minit
    */5 * * * *Setiap 5 minit
    0 * * * *Setiap jam, tepat pada jam
    0 0 * * *Setiap hari pada tengah malam
    0 9 * * 1-5Hari bekerja pada 09:00
    30 8 * * 1Setiap Isnin pada 08:30
    0 0 1 * *Hari pertama setiap bulan
    0 0 1 1 *Setiap 1 Januari

    Soalan lazim

    Apakah maksud */5 dalam cron?

    Satu langkah. Dalam medan minit, */5 bermaksud setiap minit ke-5: 0, 5, 10 dan seterusnya hingga 55. Ia bermula daripada nilai pertama medan itu, jadi */5 dalam medan jam bermaksud jam 0, 5, 10, 15 dan 20.

    Bagaimana menjalankan kerja setiap hari bekerja pada pukul 9 pagi?

    Gunakan 0 9 * * 1-5. Minit 0, jam 9, mana-mana haribulan, mana-mana bulan, Isnin hingga Jumaat.

    Mengapa kerja saya berjalan pada lebih banyak hari daripada yang dijangka?

    Apabila anda menetapkan haribulan dan hari dalam minggu, cron berjalan pada hari yang sepadan dengan salah satunya. Untuk menjalankan pada hari Isnin pertama sahaja, gunakan semakan skrip dalam kerja itu, kerana cron piawai tidak dapat menyatakannya.

    Zon waktu mana yang digunakan oleh cron?

    Zon waktu mesin atau perkhidmatan yang menjalankannya, selalunya UTC pada penjadual awan. Gunakan butang Tempatan dan UTC untuk melihat kedua-duanya.

    Adakah ini menyokong enam atau tujuh medan, atau simbol L dan #?

    Tidak. Alat ini merangkumi format lima medan piawai yang digunakan oleh crontab, GitHub Actions dan kebanyakan penjadual Linux. Format Quartz dan AWS menambah saat, tahun dan simbol seperti ? L W dan #, dan tidak disokong.

    Adakah apa-apa dihantar ke pelayan?

    Tidak. Penghuraian, penjelasan dan waktu larian semuanya dikira dalam pelayar anda.