កម្មវិធីបង្កើតកន្សោម cron

សរសេរ និងអានកាលវិភាគ crontab។ វាយបញ្ចូលកន្សោម cron រួចមើលជាពាក្យថាវាដំណើរការពេលណា ពេលដំណើរការបន្ទាប់ និងអត្ថន័យនៃវាលនីមួយៗក្នុងចំណោមវាលទាំងប្រាំ។

នាទី
ម៉ោង
ថ្ងៃ
ខែ
ថ្ងៃនៃសប្តាហ៍

រៀងរាល់នាទី។

ការដំណើរការបន្ទាប់


  •  
  •  
  •  
  •  
  •  

ម៉ោងត្រូវបានបង្ហាញតាមតំបន់ពេលវេលានៃកុំព្យូទ័ររបស់អ្នក ()។ cron ប្រើតំបន់ពេលវេលារបស់ម៉ាស៊ីនបម្រើ ដែលច្រើនតែមិនដូចគ្នា។

កាលវិភាគទូទៅ


ជ្រើសមួយដើម្បីដាក់ចូលក្នុងវាលខាងលើ។

* * * * *រៀងរាល់នាទី
*/5 * * * *រៀងរាល់ 5 នាទី
*/15 * * * *រៀងរាល់ 15 នាទី
*/30 * * * *រៀងរាល់កន្លះម៉ោង
0 * * * *រៀងរាល់ម៉ោង
0 */2 * * *រៀងរាល់ 2 ម៉ោង
0 */6 * * *រៀងរាល់ 6 ម៉ោង
0 */12 * * *ពីរដងក្នុងមួយថ្ងៃ
0 0 * * *រាល់ថ្ងៃនៅពាក់កណ្តាលអធ្រាត្រ
0 9 * * *រាល់ថ្ងៃនៅម៉ោង 9 ព្រឹក
0 9 * * 1-5ថ្ងៃច័ន្ទដល់សុក្រនៅម៉ោង 9 ព្រឹក
0 9 * * 6,0ថ្ងៃសៅរ៍និងអាទិត្យនៅម៉ោង 9
0 0 * * 1រាល់ថ្ងៃច័ន្ទនៅពាក់កណ្តាលអធ្រាត្រ
0 18 * * 5រាល់ថ្ងៃសុក្រនៅម៉ោង 6 ល្ងាច
0 0 1 * *ថ្ងៃដំបូងនៃខែ
0 0 1 1 *ថ្ងៃដំបូងនៃឆ្នាំ

អត្ថន័យនៃវាលនីមួយៗ


វាលតម្លៃដែលអនុញ្ញាត
នាទី0 – 59
ម៉ោង0 – 23
ថ្ងៃនៃខែ1 – 31
ខែ1 – 12, JAN – DEC
ថ្ងៃនៃសប្តាហ៍0 – 6, SUN – SAT (0 = 7)

តួអក្សរពិសេស


តួអក្សរអត្ថន័យ
*តម្លៃណាមួយ
,បំបែកតម្លៃក្នុងបញ្ជី
-ចន្លោះនៃតម្លៃ
/ជំហានក្នុងចន្លោះ

ផ្លូវកាត់


@yearly, @annually0 0 1 1 *
@monthly0 0 1 * *
@weekly0 0 * * 0
@daily, @midnight0 0 * * *
@hourly0 * * * *
@reboot

ពួកវាមិនស្ថិតក្នុង cron តាម POSIX ទេ ប៉ុន្តែស្ទើរគ្រប់ការអនុវត្តទទួលយកពួកវា។

អ្វីដែលធ្វើឲ្យមនុស្សភាន់ច្រឡំ


  • ពេលថ្ងៃនៃខែ និងថ្ងៃនៃសប្តាហ៍ត្រូវបានកំណត់ទាំងពីរ cron ដំណើរការនៅថ្ងៃដែលត្រូវនឹងមួយណាក៏បាន មិនមែនទាំងពីរទេ។ "* * 3 * 1" ដំណើរការនៅថ្ងៃទី 3 នៃខែ និងរាល់ថ្ងៃច័ន្ទ។ ករណីលើកលែងគឺពេលមួយក្នុងចំណោមពួកវាចាប់ផ្តើមដោយផ្កាយ៖ "* * */2 * 1" ដំណើរការតែនៅថ្ងៃសេសដែលជាថ្ងៃច័ន្ទផងដែរ។ ទំព័រសៀវភៅណែនាំពន្យល់រឿងនេះខុស។
  • ដំណើរការម៉ាស៊ីនបម្រើ និង cron ជាមួយវា ក្នុងម៉ោង UTC។ កាលវិភាគដែលសរសេរក្នុងតំបន់ដែលប្រើម៉ោងរដូវក្តៅនឹងរំលងការដំណើរការមួយក្នុងមួយឆ្នាំ ហើយធ្វើម្តងទៀតនៅពេលប្តូរបន្ទាប់។
  • cron ស្តង់ដារគ្មានវាលសម្រាប់វិនាទី ឬឆ្នាំទេ។ បើអ្នកត្រូវការភាពជាក់លាក់បែបនោះ cron មិនមែនជាឧបករណ៍ត្រឹមត្រូវទេ។
  • ជៀសវាង @reboot។ វាអាស្រ័យលើរបៀបដែលម៉ាស៊ីនត្រូវបានចាប់ផ្តើមឡើងវិញ និងសេវាកម្មណាខ្លះរួចរាល់នៅពេលនោះ ដែលធ្វើឲ្យពិបាកគិត។
  • កាលវិភាគដែលមិនសមនឹងវាលប្រាំអាចបែងចែកជាពីរជួរ។ ដើម្បីដំណើរការអ្វីមួយរៀងរាល់ 90 នាទី សូមសរសេរ "0 */3 * * *" និង "30 1/3 * * *" ជាប់គ្នា។
  • សរសេរពាក្យបញ្ជាដោយប្រើផ្លូវពេញលេញ។ cron ដំណើរការជាមួយ PATH ខ្លីណាស់ ហើយស្ទើរគ្មានអថេរបរិស្ថានណាមួយដែល shell របស់អ្នកមាន។

សំណួរញឹកញាប់អំពីកន្សោម cron


វាលទាំងប្រាំមានន័យដូចម្តេច?
តាមលំដាប់នេះ៖ នាទី ម៉ោង ថ្ងៃនៃខែ ខែ និងថ្ងៃនៃសប្តាហ៍។ វាលដែលមានផ្កាយត្រូវនឹងគ្រប់តម្លៃ។

ថ្ងៃអាទិត្យគឺ 0 ឬ 7?
ទាំងពីរ។ ការអនុវត្តភាគច្រើនទទួលយកទាំង 0 និង 7 សម្រាប់ថ្ងៃអាទិត្យ ព្រមទាំងឈ្មោះបីតួអក្សរពី SUN ដល់ SAT។

ហេតុអ្វីការងាររបស់ខ្ញុំមិនដំណើរការនៅម៉ោងដែលខ្ញុំរំពឹង?
មូលហេតុធម្មតាគឺ ម៉ាស៊ីនបម្រើនៅតំបន់ពេលវេលាផ្សេង ច្បាប់អំពីថ្ងៃនៃខែជាមួយថ្ងៃនៃសប្តាហ៍ខាងលើ ឬពាក្យបញ្ជាបរាជ័យព្រោះ cron មិនផ្ទុកប្រវត្តិរូប shell របស់អ្នក។

តើទំព័រនេះផ្ញើកន្សោមរបស់ខ្ញុំទៅកន្លែងណាទេ?
ទេ។ កន្សោមត្រូវបានអាន ហើយពេលដំណើរការត្រូវបានគណនាក្នុងកម្មវិធីរុករករបស់អ្នក; គ្មានអ្វីត្រូវបានផ្ទុកឡើងទេ។

Wikipedia — Cron
Wikipedia — Crontab
Wikipedia — Daemon