Libreng Converter

Cron Expression Generator

Bumuo, ipaliwanag, at i-validate ang mga cron expression kaagad sa iyong browser. Visual builder at expression parser — libre, pribado, at panig ng kliyente.

Cron Expression
0 */6 * * *
Paglalarawan na nababasa ng tao
Every minute
Susunod na 5 Naka-iskedyul na Pagtakbo
Calculating...

Tungkol sa tool na ito

Ang mga expression ng cron ay lima (o anim, depende sa system) na mga field na pinaghihiwalay ng espasyo na naglalarawan ng iskedyul: minuto, oras, araw ng buwan, buwan, at araw ng linggo. Ang bawat field ay tumatanggap ng mga numerong halaga, hanay, listahan, dagdag, at wildcard. Ang Cron ay ang de facto na format ng pag-iiskedyul ng Unix mula noong huling bahagi ng 1970s at ngayon ay ginagamit nang higit pa sa Unix — ng Kubernetes CronJobs, GitHub Actions, mga panuntunan ng AWS EventBridge, mga trabaho sa Jenkins, at halos lahat ng iba pang sistema ng pag-iiskedyul sa produksyon.

Ang pagbabasa at pagsulat ng mga cron expression sa pamamagitan ng kamay ay madaling magkamali. Ang mga field ay nakaposisyon, ang araw-ng-buwan at araw-ng-linggo na pakikipag-ugnayan ay hindi halata (isang halaga sa alinmang field ang nagti-trigger sa trabaho, hindi pareho), at ang mga pagkakamali ay tahimik na gumagawa ng mga iskedyul na mukhang tama ngunit gumagana sa mga maling oras. Iniiwasan ng generator na nagsasalin ng mga plain-English na iskedyul sa tamang cron syntax ang mga pagkakamaling ito.

Nag-aalok ang tool na ito ng dalawang direksyon: pagbuo ng cron expression mula sa isang friendly na form (tuwing Lunes sa 9 AM, bawat 5 minuto sa mga oras ng negosyo), at pagpapaliwanag ng isang umiiral na cron expression sa mga termino ng tao. Parehong tumatakbo sa iyong browser nang walang anumang pakikipag-ugnayan sa server.

Bakit Gumamit ng Cron Generator

Ang cron syntax ay siksik at hindi mapagpatawad. Kasama sa mga karaniwang pagkakamali ang nakakalito na araw-ng-linggo na pagnunumero (Linggo ay 0 o 7 depende sa system), pagkalimot sa araw-ng-buwan at araw-ng-linggo na paggamit OR semantics, at hindi pagkakaunawaan sa increment syntax (*/5 ay nangangahulugang bawat 5 simula sa 0). Nahuhuli ito ng generator sa pamamagitan ng pagbuo — ang mga ginawang expression ay tumutugma sa inilarawan mo sa form.

Ang pagbabasa ng mga umiiral na expression ay pantay na mahirap. Ang isang iskedyul tulad ng 0 9 * * 1-5 ay bumabasa bilang tuwing weekday sa 9 AM kapag alam mo na ang syntax, ngunit sinumang hindi pamilyar sa cron ay kailangang hanapin ang bawat field. Ang pagpapaliwanag sa expression sa mga termino ng tao ay mas mabilis kaysa sa pag-aaral ng syntax para sa mga one-off na pakikipag-ugnayan.

Paano gamitin

Pumili ng pattern ng iskedyul, kunin ang cron expression.

  1. Pumili ng generation mode: Bumuo ng cron expression mula sa mga input ng form (dalas, oras, araw), o ipaliwanag ang isang umiiral na expression sa mga termino ng tao.
  2. I-configure ang iskedyul: Piliin ang dalas (bawat minuto, bawat oras, araw-araw, bawat linggo, bawat buwan, custom). Tukuyin ang mga oras, araw, at pagitan kung kinakailangan. Pinipigilan ng form ang mga input sa mga wastong kumbinasyon.
  3. Bumuo o magpaliwanag: Gumagawa ang henerasyon ng karaniwang cron syntax (5 field). Pinaghiwa-hiwalay ng paliwanag ang bawat field at nagbibigay ng buod na nababasa ng tao.
  4. Gamitin sa iyong scheduler: I-paste ang nabuong expression sa Kubernetes CronJob spec, iskedyul ng GitHub Actions, AWS EventBridge, o scheduler ng iyong platform.

Mga Karaniwang Paggamit

Mga Detalye ng Teknikal

Ang karaniwang cron ay may limang field: minuto (0–59), oras (0–23), araw ng buwan (1–31), buwan (1–12), araw ng linggo (0–6 o 0–7, parehong Linggo). Ang bawat field ay tumatanggap ng iisang value, listahan na pinaghihiwalay ng kuwit, hanay na may gitling, dagdag na may /, o wildcard na may *.

Araw-ng-buwan at araw-ng-linggo na paggamit O semantics: kung nakatakda ang alinman sa halagang hindi wildcard, tatakbo ang trabaho kapag tumugma ang alinman. Ito ay counterintuitive ngunit tumutugma sa gawi ng POSIX cron. Ang pagtatakda ng parehong mga patlang ay gumagawa ng isang mas malawak na iskedyul, hindi isang mas makitid.

Ang mga extension ay nag-iiba ayon sa pagpapatupad. Ang ilan ay tumatanggap ng ikaanim na field sa loob ng ilang segundo (Quartz, Spring); may mga tumatanggap? bilang alternatibong wildcard; ang ilan ay kinabibilangan ng @yearly, @monthly, @daily shortcut. Gumagawa ang generator ng karaniwang 5-field cron na angkop para sa karamihan ng mga system.

Pinakamahusay na Kasanayan

Mga madalas itanong

Ano ang cron expression format?
Gumagamit ang karaniwang cron ng 5 field: minuto (0-59), oras (0-23), araw ng buwan (1-31), buwan (1-12), araw ng linggo (0-7, kung saan ang 0 at 7 ay Linggo). Mga espesyal na character: * (kahit ano), , (listahan), - (saklaw), / (hakbang).
Paano ako magtatakda ng trabaho na tumakbo bawat 5 minuto?
Gamitin ang */5 sa field ng minuto: '*/5 * * * *'. Ang /5 ay nangangahulugang 'bawat ika-5 na halaga'. Katulad nito, */15 = bawat 15 minuto, */2 = bawat 2 minuto.
Anong timezone ang ginagamit ng cron?
Karaniwang ginagamit ng Cron ang timezone ng system. Sa mga server ng Linux, ito ay karaniwang UTC maliban kung naka-configure kung hindi man. Ang mga serbisyo ng cloud (AWS, GCP) ay madalas na default sa UTC. Palaging suriin ang setting ng timezone ng iyong system.
Ito ba ang parehong format na ginamit ng GitHub Actions?
Gumagamit ang GitHub Actions ng parehong 5-field na format ngunit tumatakbo sa UTC timezone. Ginagamit din ng AWS CloudWatch at Kubernetes CronJobs ang format na ito. Gumagamit ang ilang system tulad ng Quartz ng pinahabang 6-7 na format ng field na may mga segundo.
Ano ang pagkakaiba ng 0 sa araw ng linggo at 7?
Parehong ibig sabihin ng Linggo. Tumatanggap ang POSIX cron ng 0–6 o 0–7. Gamitin ang alinman ang gusto ng iyong partikular na pagpapatupad ng cron; karamihan ay tinatanggap pareho.
Ang nagpapaliwanag ba ay tumpak para sa hindi karaniwang cron?
Tina-target nito ang karaniwang 5-field cron. Maaaring hindi ma-parse nang tama ang mga quartz extension (na may mga segundo), AWS EventBridge variant, at iba pang dialect. Kumpirmahin laban sa dokumentasyon ng destination system.
Ang aking ekspresyon ba ay ipinadala sa isang server?
Hindi. Ang pagbuo at pagpapaliwanag ay nangyayari sa iyong browser.
Paano ang @yearly, @monthly shortcut?
Sinusuportahan ng mga karaniwang pagpapatupad ng cron ang @yearly, @monthly, @weekly, @daily, @hourly, at @reboot bilang mga shortcut para sa mga karaniwang iskedyul. Ang generator ay gumagawa ng karaniwang 5-patlang na mga expression; maaari mong manu-manong palitan ang mga shortcut kung tinatanggap ng iyong scheduler ang mga ito.