Cron Илэрхийлэл Хөрвүүлэгч

Cron хуваарийг энгийн талбарын задаргаа болгон хөрвүүлж, дараагийн ажиллах цагуудыг хөтөч дээрээ шууд хараарай.

Cron илэрхийлэл

Дараагийн ажиллах цагууд

(таны локал цаг)

Хөрвүүлэхийн тулд cron илэрхийллийг оруулна уу.

Таны cron илэрхийллийг таны хөтөч дээр хөрвүүлнэ. BroBroGo руу юу ч илгээгдэхгүй.

Түгээмэл асуултууд

Энэ хэрэгсэл ямар cron синтаксийг дэмждэг вэ?

Стандарт 5 талбарт cron — минут, цаг, сарын өдөр, сар, долоо хоногийн өдөр — үүнд мужууд (1-5), алхмууд (*/15), жагсаалтууд (1,15), нэрлэсэн сар болон гарагууд (JAN, MON), мөн @yearly/@monthly/@weekly/@daily/@hourly товчлолууд багтана. Нэг анхаарах дүрэм: сарын өдөр болон долоо хоногийн өдөр хоёулаа хязгаарлагдсан үед (одон тэмдэг * биш бол) аль нэг нь таарахад л хангалттай — заавал хоёулаа таарах албагүй.

Дараагийн ажиллах цагуудыг ямар цагийн бүсээр харуулж байна вэ?

Таны хөтчийн локал цагийн бүс — таны системийн цагтай ижил байна. Стандарт cron нь өөртөө цагийн бүс агуулдаггүй; түүнийг ажиллуулж буй ажлын төлөвлөгч (job scheduler) үүнийг шийддэг тул эдгээр цагийг серверийнх биш, өөрийн локал хуваарийн урьдчилсан харагдац гэж үзээрэй.

Яагаад энэ хуваарь хэзээ ч биелэхгүй гэж зааж байна вэ?

Ихэвчлэн сонгосон сар бүрд байдаггүй сарын өдрийн утгаас болдог — жишээлбэл, сарын талбарт 4, 6, 9, 11-р саруудыг зааж өгөөд өдрийн талбарт 31 гэж бичих үед. Таны жагсаасан бүх сард байдаг өдрийг сонгох эсвэл хуваарийг тусдаа илэрхийллүүд болгон хуваана уу.

Cron илэрхийллийн бүтэц, түүнийг тайлбарлах нь

Cron илэрхийлэл нь системд тодорхой ажлуудыг автоматжуулан, тогтсон цаг хугацаанд ажиллуулахад ашиглагддаг стандарт формат юм. Энэхүү формат нь даалгавар төлөвлөлтийн үндсэн суурь болдог бөгөөд систем хөгжүүлэгчид болон серверийн администраторуудад өдөр тутмын ажлуудыг автоматжуулахад тусалдаг.

Стандарт cron илэрхийлэл нь хоосон зайгаар тусгаарлагдсан 5 талбараас бүрддэг. Талбар бүр нь цаг хугацааны тодорхой нэг нэгжийг илэрхийлдэг бөгөөд зүүнээс баруун тийш дараах дарааллаар байрлана:

  1. Минут: Ажил эхлэх минут (0–59).
  2. Цаг: Ажил эхлэх цаг (0–23).
  3. Сарын өдөр: Сарын хэд дэх өдөр ажиллах (1–31).
  4. Сар: Жилийн аль сард ажиллах (1–12 эсвэл JAN–DEC).
  5. Гараг (Долоо хоногийн өдөр): Долоо хоногийн аль өдөр ажиллах (0–6 буюу Ням гарагаас Бямба гараг хүртэл, эсвэл MON–SUN).

Эдгээр талбаруудад зөвхөн тооноос гадна тусгай тэмдэгтүүдийг ашиглан уян хатан хуваарь үүсгэж болдог. Жишээлбэл, мужууд (1-5), алхмууд (*/15), жагсаалтууд (1,15), нэрлэсэн сар болон гарагуудыг ашиглах боломжтой. Мөн @yearly, @monthly, @weekly, @daily, @hourly зэрэг бэлэн товчлолуудыг ашиглаж болно.

Сарын өдөр болон Гарагийн талбарын харилцан хамаарал

Cron синтаксийн нэг чухал дүрэм бол сарын өдөр (day of month) болон долоо хоногийн өдөр (day of week) гэсэн хоёр талбарын харилцан үйлчлэл юм.

Хэрэв эдгээр хоёр талбар хоёулаа хязгаарлагдмал утгатай (өөрөөр хэлбэл одон тэмдэг буюу * биш) байвал cron систем тэдгээрийг "ЭСВЭЛ" (OR) нөхцөлөөр тооцдог. Энэ нь тухайн хуваарь ажиллахын тулд заавал хоёр нөхцөл зэрэг биелэх албагүй бөгөөд аль нэг нөхцөл нь таарахад л ажил ажиллана гэсэн үг юм. Жишээлбэл, сарын өдөр дээр 15, гараг дээр MON гэж зааж өгсөн бол тухайн ажил сарын 15-ны өдөр бүр, мөн сарын бусад өдрүүдэд тохиох Даваа гараг бүрд ажиллах болно.

Хэзээ ч биелэхгүй хуваарь болон нийтлэг алдаанууд

Cron илэрхийлэл бичих явцад логикийн алдаа гаргах тохиолдол цөөнгүй байдаг. Үүний нэг жишээ бол хэзээ ч биелэх боломжгүй хуваарь үүсгэх явдал юм.

Хэрэв таны оруулсан илэрхийлэлд сонгосон сар бүрд байдаггүй сарын өдөр зааж өгсөн бол систем "Энэ хуваарь хэзээ ч биелэх боломжгүй — сонгосон сар бүрд байдаггүй сарын өдөр байгаа эсэхийг шалгана уу." гэсэн алдааг заана. Энэ нь ихэвчлэн сарын өдрийн талбарт 31 гэж зааж өгөөд, сарын талбарт 31 хоноггүй саруудыг (жишээлбэл 4, 6, 9, 11-р сар) сонгосон үед тохиолддог.

Мөн хэрэв оруулсан илэрхийллийн синтакс буруу байвал "Хүчингүй cron илэрхийлэл" гэсэн алдааны мэдэгдэл гарна. Энэхүү хэрэгсэл нь стандарт 5 талбарт cron синтаксийг дэмждэг бөгөөд секунд заадаг 6 дахь талбар эсвэл Quartz системд ашиглагддаг L, W, # зэрэг тусгай өргөтгөлүүдийг дэмждэггүй болохыг анхаарна уу.

Цагийн бүс ба дараагийн ажиллах цагууд

Стандарт cron илэрхийлэл нь өөртөө цагийн бүсийн мэдээллийг агуулдаггүй. Төлөвлөсөн ажлууд яг хэзээ ажиллах нь тухайн cron-ыг ажиллуулж буй серверийн цагийн бүсээс шууд хамаардаг.

Энэхүү хөрвүүлэгч хэрэгсэл нь таны оруулсан илэрхийллийг задлан шинжилж, дараагийн ажиллах цагуудыг таны хөтчийн локал цагийн бүсээр тооцоолон харуулдаг. Ингэснээр та өөрийн цагийн бүсэд тухайн ажил яг хэдэн цагт ажиллахыг урьдчилан харах боломжтой болно. Та "Тоо" талбарын утгыг 1-ээс 20 хүртэлх тоогоор тохируулан, дараагийн ажиллах цагуудын жагсаалтын уртыг өөрчлөх боломжтой.

Хөтөч дээрх боловсруулалт ба нууцлал

Энэхүү хэрэгслийн ажиллагаа нь бүхэлдээ хэрэглэгчийн талд буюу таны вэб хөтөч дээр явагддаг. Таны оруулсан cron илэрхийлэл болон тохиргооны мэдээлэл BroBroGo сервер рүү илгээгдэхгүй бөгөөд зөвхөн таны төхөөрөмж дээр боловсруулагдана. Энэ нь нууцлалыг хадгалахын зэрэгцээ хурдан хугацаанд үр дүнг харах боломжийг олгодог.

Түгээмэл асуулт хариулт (FAQ)

Энэ хэрэгсэл ямар cron синтаксийг дэмждэг вэ?
Стандарт 5 талбарт cron — минут, цаг, сарын өдөр, сар, долоо хоногийн өдөр — үүнд мужууд (1-5), алхмууд (*/15), жагсаалтууд (1,15), нэрлэсэн сар болон гарагууд (JAN, MON), мөн @yearly/@monthly/@weekly/@daily/@hourly товчлолууд багтана. Нэг анхаарах дүрэм: сарын өдөр болон долоо хоногийн өдөр хоёулаа хязгаарлагдсан үед (одон тэмдэг * биш бол) аль нэг нь таарахад л хангалттай — заавал хоёулаа таарах албагүй.

Дараагийн ажиллах цагуудыг ямар цагийн бүсээр харуулж байна вэ?
Таны хөтчийн локал цагийн бүс — таны системийн цагтай ижил байна. Стандарт cron нь өөртөө цагийн бүс агуулдаггүй; түүнийг ажиллуулж буй ажлын төлөвлөгч (job scheduler) үүнийг шийддэг тул эдгээр цагийг серверийнх биш, өөрийн локал хуваарийн урьдчилсан харагдац гэж үзээрэй.

Яагаад энэ хуваарь хэзээ ч биелэхгүй гэж зааж байна вэ?
Ихэвчлэн сонгосон сар бүрд байдаггүй сарын өдрийн утгаас болдог — жишээлбэл, сарын талбарт 4, 6, 9, 11-р саруудыг зааж өгөөд өдрийн талбарт 31 гэж бичих үед. Таны жагсаасан бүх сард байдаг өдрийг сонгох эсвэл хуваарийг тусдаа илэрхийллүүд болгон хуваана уу.

Энэ хэрэгсэл секунд заах талбарыг дэмждэг үү?
Үгүй, энэ хэрэгсэл нь зөвхөн стандарт 5 талбарт cron синтаксийг дэмждэг бөгөөд секунд заадаг 6 дахь талбар болон Quartz өргөтгөлүүдийг дэмждэггүй.