Referensi ekspresi cron - Amazon EventBridge

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Referensi ekspresi cron

Ekspresi cron memiliki enam bidang yang diperlukan, yang dipisahkan oleh spasi putih.

Sintaks

cron(fields)
Bidang Nilai Wildcard

Menit

0-59

, - * /

Jam

0-23

, - * /

D ay-of-month

1-31

, - * ? / L W

Bulan

1-12 atau JAN-DES

, - * /

D ay-of-week

1-7 atau MGG-SBT

, - * ? L #

Tahun

1970-2199

, - * /

Wildcard
  • Wildcard , (koma) mencakup nilai tambahan. Di bidang Bulan, JAN, FEB, MAR mencakup Januari, Februari, dan Maret.

  • Wildcard - (tanda hubung) menentukan rentang. Di bidang Tanggal, 1-15 mencakup tanggal 1 hingga 15 pada bulan yang ditentukan.

  • Wildcard * (bintang) mencakup semua nilai di bidang. Di bidang Jam, * mencakup setiap jam. Anda tidak dapat menggunakan* di ay-of-week bidang D ay-of-month dan D. Jika Anda menggunakannya di satu bidang, Anda harus menggunakan ? di bidang lain.

  • Wildcard / (garis miring) menentukan kenaikan. Di bidang menit, Anda bisa memasukkan 1/10 untuk menentukan setiap menit kesepuluh, mulai dari menit pertama jam (sebagai contoh, menit ke-11, 21, dan 31, dan seterusnya).

  • Wildcard ? (tanda tanya) menentukan pilihan apa pun. Di ay-of-month bidang D Anda bisa memasukkan 7 dan jika ada hari dalam seminggu yang dapat diterima, Anda bisa masuk? di ay-of-week bidang D.

  • Wildcard L di ay-of-week bidang D ay-of-month atau D menentukan hari terakhir bulan atau minggu.

  • WWildcard di ay-of-month bidang D menentukan hari kerja. Di ay-of-month bidang D, 3W tentukan hari kerja yang paling dekat dengan hari ketiga bulan itu.

  • Wildcard # di ay-of-week bidang D menentukan contoh tertentu dari hari yang ditentukan dalam seminggu dalam sebulan. Sebagai contoh, 3#2 akan menjadi hari Selasa kedua setiap bulan: 3 mengacu pada hari Selasa karena itu adalah hari ketiga setiap minggu, dan 2 mengacu pada hari kedua dari jenis tersebut dalam bulan tersebut.

    catatan

    Jika Anda menggunakan karakter '#', Anda hanya dapat menentukan satu ekspresi di day-of-week bidang. Sebagai contoh, "3#1,6#3" tidak valid karena ditafsirkan sebagai dua ekspresi.

Keterbatasan:
  • Anda tidak dapat menentukan ay-of-week bidang D ay-of-month dan D dalam ekspresi cron yang sama. Jika Anda menentukan nilai atau * (bintang) di salah satu bidang, Anda harus menggunakan ? (tanda tanya) di bidang lain.

  • Ekspresi cron yang mengarah ke tingkat lebih cepat dari 1 menit tidak didukung.

Contoh

Anda dapat menggunakan contoh string cron berikut saat membuat aturan dengan jadwal.

Menit Jam Hari dalam sebulan Bulan Hari dalam seminggu Tahun Arti

0

10

*

*

?

*

Jalankan pada pukul 10.00 (UTC+0) setiap hari

15

12

*

*

?

*

Jalankan pada pukul 12.15 (UTC+0) setiap hari

0

18

?

*

SNN-JMT

*

Jalankan pada pukul 18.00 (UTC) setiap Senin hingga Jumat

0

8

1

*

?

*

Jalankan pada pukul 08.00 (UTC+0) setiap tanggal 1 pada bulan tersebut

0/15

*

*

*

?

*

Jalankan setiap 15 menit

0/10

*

?

*

MON-FRI

*

Jalankan setiap 10 menit Senin hingga Jumat

0/5

8-17

?

*

SNN-JMT

*

Jalankan setiap 5 menit pada hari Senin hingga Jumat antara pukul 08.00 dan 17.55 (UTC+0)

0/30

20-2

?

*

SNN-JMT

*

Jalankan setiap 30 menit pada hari Senin sampai Jumat antara pukul 22.00 pada hari pertama sampai 02.00 pada hari berikutnya (UTC)

Jalankan dari pukul 12:00 hingga 2:00 pagi pada Senin pagi (UTC).

Contoh berikut membuat aturan yang berjalan setiap hari pada pukul 12.00 siang UTC+0.

aws events put-rule --schedule-expression "cron(0 12 * * ? *)" --name MyRule1

Contoh berikut membuat aturan yang berjalan setiap hari, pada 14.05 dan 14.35 UTC+0.

aws events put-rule --schedule-expression "cron(5,35 14 * * ? *)" --name MyRule2

Contoh berikut membuat aturan yang berjalan pada 10.15 UTC+0 pada hari Jumat terakhir setiap bulan selama tahun 2019 hingga 2022.

aws events put-rule --schedule-expression "cron(15 10 ? * 6L 2019-2022)" --name MyRule3