የCron መግለጫ ተንታኝ

የcron መርሐግብርን ወደ ግልጽ የመስክ ዝርዝር ይተንትኑ እና የሚቀጥሉትን የማሄጃ ጊዜያት በቀጥታ በብሮውዘርዎ ውስጥ አስቀድመው ይመልከቱ።

የCron መግለጫ

የሚቀጥሉት ማሄጃዎች

(የአካባቢዎ ሰዓት)

ለመተንተን የcron መግለጫ ያስገቡ።

የእርስዎ cron መግለጫ በብሮውዘርዎ ውስጥ ይተነተናል። ምንም ነገር ወደ BroBroGo አይላክም።

በተደጋጋሚ የሚነሱ ጥያቄዎች

ይህ መሣሪያ የትኛውን የcron አገባብ (syntax) ይደግፋል?

መደበኛ ባለ 5-መስክ cron — ደቂቃ፣ ሰዓት፣ የወሩ ቀን፣ ወር እና የሳምንቱ ቀን — ክልሎችን (1-5)፣ እርምጃዎችን (*/15)፣ ዝርዝሮችን (1,15)፣ ስም ያላቸው ወራትን እና የሳምንት ቀናትን (JAN, MON)፣ እና የ @yearly/@monthly/@weekly/@daily/@hourly አቋራጮችን ጨምሮ። በቀላሉ ሊያመልጥ የሚችል አንድ ደንብ፡ ሁለቱም የወሩ ቀን እና የሳምንቱ ቀን ሲገደቡ (* ካልሆኑ)፣ ከሁለቱ አንዱ መመሳሰሉ በቂ ነው — መስማማት የለባቸውም።

የሚቀጥሉት የማሄጃ ጊዜያት በየትኛው የሰዓት ቀጠና ነው የሚታዩት?

የብሮውዘርዎ የአካባቢ ሰዓት ቀጠና — የስርዓትዎ ሰዓት የሚጠቀመው ተመሳሳይ ነው። መደበኛ cron የራሱ የሆነ የሰዓት ቀጠና አይይዝም፤ እሱን የሚያሄደው የሥራ መርሐግብር አውጪ (job scheduler) ይህንን ይወስናል፣ ስለዚህ እነዚህን ጊዜያት እንደ የራስዎ የአካባቢ መርሐግብር ቅድመ-ዕይታ አድርገው ይውሰዱት እንጂ የግድ የአገልጋዩ (server) ላይሆን ይችላል።

ይህ መርሐግብር መቼም ሊከሰት አይችልም የሚለው ለምንድን ነው?

ብዙውን ጊዜ በተመረጠው ወር ሁሉ ውስጥ የማይገኝ የወሩ ቀን እሴት ሲሆን — ለምሳሌ፣ በወሩ መስክ ውስጥ ከሚያዝያ፣ ሰኔ፣ መስከረም ወይም ኅዳር ጋር ቀን 31ን መምረጥ። በዘረዘሯቸው ወራት ሁሉ ውስጥ የሚገኝ ቀን ይምረጡ፣ ወይም መርሐግብሩን ወደተለያዩ መግለጫዎች ይክፈሉት።

የCron መግለጫ ክፍሎችን መረዳት

የcron መግለጫ በስርዓተ ክወናዎች ወይም በሥራ መርሐግብር አውጪዎች (job schedulers) ውስጥ በየጊዜው የሚከናወኑ ተግባራትን በራስ-ሰር ለማስኬድ የሚያገለግል የአገባብ ዘዴ ነው። ይህ መሣሪያ የcron መግለጫን በመውሰድ ወደ ግለሰባዊ ክፍሎቹ በመከፋፈል እያንዳንዱ የመርሐግብር ክፍል ምን ትርጉም እንዳለው ያሳያል። በተጨማሪም መርሐግብሩ የሚቀጥልባቸውን ጊዜያት ዝርዝር በአካባቢዎ የሰዓት ቀጠና አስልቶ ያሳያል።

መሣሪያው የሚደግፈው መደበኛውን ባለ 5-መስክ የcron አገባብ ነው። እያንዳንዱ መስክ የተወሰነ የጊዜ ገደብን የሚወክል ሲሆን፥ ከግራ ወደ ቀኝ እንደሚከተለው ይደረደራል፦

  1. ደቂቃ: ተግባሩ የሚጀምርበትን ደቂቃ ይወስናል።
  2. ሰዓት: ተግባሩ የሚከናወንበትን የሰዓት እሴት ይገልጻል።
  3. የወሩ ቀን: ተግባሩ የሚከናወንበትን የወሩን የተወሰነ ቀን ያመለክታል (የወሩ ቀን)
  4. ወር: ተግባሩ የሚሠራበትን ወር ወይም ወራት ይወስናል (ወር)
  5. የሳምንቱ ቀን: ተግባሩ የሚከናወንባቸውን የሳምንቱን ቀናት ይገልጻል (የሳምንቱ ቀን)

ይህ መሣሪያ ባለ ስድስት መስክ የሰከንድ እሴትን ወይም እንደ LW፣ እና # ያሉ የQuartz-ተኮር ቅጥያዎችን አይደግፍም።


የግብዓት ቅርጸቶች እና ልዩ ምልክቶች

መሣሪያው የተለያዩ የcron አገባብ ዓይነቶችን እና አቋራጮችን መተንተን ይችላል። በግብዓት ሳጥኑ ውስጥ */15 9-17 * * MON-FRI የሚለውን የመሰሉ የናሙና እሴቶችን ማስገባት ይቻላል። መሣሪያው የሚከተሉትን ምልክቶች ይደግፋል፦

  • ማንኛውም (*): በየትኛውም መስክ ላይ ሲቀመጥ ያ መስክ የሚፈቅደውን ሁሉንም እሴቶች ይወክላል። በመሣሪያው የመርሐግብር ዝርዝር ውስጥ "ማንኛውም" ተብሎ ይታያል።
  • ክልሎች (-): የተወሰነ የጊዜ ክልልን ለመለየት ያገለግላል (ለምሳሌ 1-5 ወይም MON-FRI)።
  • እርምጃዎች (/): በየስንት ጊዜው እንደሚደገም ለመወሰን ያገለግላል (ለምሳሌ */15)። ለእነዚህ ዓይነቶች መሣሪያው እንደ "በየ {n} ደቂቃዎች"፣ "በየ {n} ሰዓታት"፣ "በየ {n} ቀናት"፣ "በየ {n} ወራት" ወይም "በየ {n} ቀናት" በማለት ይተነትናል።
  • ዝርዝሮች (,): ከአንድ በላይ የተወሰኑ እሴቶችን በነጠላ ሰረዝ በመለየት ለመዘርዘር ያገለግላል (ለምሳሌ 1,15)።
  • የጽሑፍ ስሞች: ለወራት (ለምሳሌ JAN) እና ለሳምንት ቀናት (ለምሳሌ MON) የሚሰጡ አህጽሮተ ቃላትን ይደግፋል።

በተጨማሪም መሣሪያው የሚከተሉትን መደበኛ አቋራጮች ይደግፋል፦

  • @yearly
  • @monthly
  • @weekly
  • @daily
  • @hourly

የሰዓት ቀጠናዎች እና የሚቀጥሉ ማሄጃዎች ስሌት

የcron መግለጫዎች በራሳቸው ውስጥ የሰዓት ቀጠና መረጃን አይይዙም። ይህ መሣሪያ የሚቀጥሉትን የማሄጃ ጊዜያት አስልቶ የሚያሳየው በብሮውዘርዎ የአካባቢ ሰዓት ቀጠና መሠረት ነው። ይህም በይነገጹ ላይ "(የአካባቢዎ ሰዓት)" በሚል ማስታወሻ ይገለጻል።

በማሳያው ላይ የሚታዩትን የሚቀጥሉ ማሄጃዎች ብዛት ከ1 እስከ 20 ባለው ክልል ውስጥ ባለው የቁጥር ግብዓት ማስተካከል ይቻላል። ይህ ባህሪ መርሐግብሩ በተግባር ላይ በሚውልበት ጊዜ መቼ መቼ እንደሚሠራ አስቀድሞ ለማረጋገጥ ይረዳል። በተለይም በተለያዩ አገልጋዮች ላይ የሚሄዱ ሥራዎች ከአካባቢዎ ሰዓት ጋር እንዴት እንደሚጣጣሙ ለመረዳት ጠቃሚ ነው።


የተለመዱ ስህተቶች እና የደንብ ልዩነቶች

የcron መግለጫዎችን በሚጽፉበት ጊዜ የሚከተሉትን ደንቦች እና የድንበር ሁኔታዎች ማጤን ያስፈልጋል፦

የወሩ ቀን እና የሳምንቱ ቀን ጥምረት

በመደበኛ የcron ሕግ መሠረት፥ ሁለቱም የወሩ ቀን እና የሳምንቱ ቀን መስኮች ከተገደቡ (ማለትም * ካልሆኑ)፥ መርሐግብሩ የሚሠራው ከሁለቱ አንዱ መስፈርት ሲሟላ ነው። ሁለቱም በአንድ ጊዜ መሟላት የለባቸውም።

የማይከሰቱ መርሐግብሮች

አንድ የcron መግለጫ በሰዋስው ደረጃ ትክክለኛ ሆኖ ነገር ግን በተግባር መቼም ሊከሰት የማይችል መርሐግብር ሊይዝ ይችላል። ለምሳሌ፥ የወሩ ቀን እሴት 31 ተብሎ ከተወሰነ እና በተመረጡት ወራት ውስጥ እንደ ሚያዝያ፣ ሰኔ፣ መስከረም ወይም ኅዳር ያሉ 30 ቀናት ብቻ ያላቸው ወራት ከተካተቱ መርሐግብሩ ሊከሰት አይችልም። በዚህ ጊዜ መሣሪያው "ይህ መርሐግብር መቼም ሊከሰት አይችልም — በተመረጡት ወራት ሁሉ ውስጥ የማይገኝ የወሩ ቀን መኖሩን ያረጋግጡ።" የሚል የስህተት መልዕክት ያሳያል።

የተሳሳተ አገባብ

የገባው መግለጫ የcron ሕግን የማይከተል ከሆነ መሣሪያው "የተሳሳተ የcron መግለጫ።" የሚል መልዕክት ያሳያል። ግብዓቱ ባዶ በሚሆንበት ጊዜ ደግሞ መሣሪያው ወደ ዝግጁነት ሁኔታ በመመለስ "ለመተንተን የcron መግለጫ ያስገቡ።" የሚለውን መልዕክት ያሳያል።


የደህንነት እና የሂደት አፈጻጸም መረጃ

ይህ መሣሪያ የእርስዎን ግላዊነት ለመጠበቅ ሙሉ በሙሉ በብሮውዘርዎ ውስጥ ይሠራል። የሚያስገቡት ማንኛውም የcron መግለጫ ወይም መረጃ ወደ BroBroGo አገልጋዮች አይላክም። ሁሉም የመተንተን እና የሚቀጥሉ ማሄጃዎችን የማስላት ተግባራት የሚከናወኑት በኮምፒውተርዎ ወይም በስልክዎ ብሮውዘር ላይ ብቻ ነው።


ተደጋግመው የሚነሱ ጥያቄዎች

ጥያቄ፦ ይህ መሣሪያ የትኛውን የcron አገባብ (syntax) ይደግፋል?

መልስ፦ መደበኛ ባለ 5-መስክ cron — ደቂቃ፣ ሰዓት፣ የወሩ ቀን፣ ወር እና የሳምንቱ ቀን — ክልሎችን (1-5)፣ እርምጃዎችን (/15)፣ ዝርዝሮችን (1,15)፣ ስም ያላቸው ወራትን እና የሳምንት ቀናትን (JAN, MON)፣ እና የ @yearly/@monthly/@weekly/@daily/@hourly አቋራጮችን ጨምሮ። በቀላሉ ሊያመልጥ የሚችል አንድ ደንብ፡ ሁለቱም የወሩ ቀን እና የሳምንቱ ቀን ሲገደቡ ( ካልሆኑ)፣ ከሁለቱ አንዱ መመሳሰሉ በቂ ነው — መስማማት የለባቸውም።

ጥያቄ፦ የሚቀጥሉት የማሄጃ ጊዜያት በየትኛው የሰዓት ቀጠና ነው የሚታዩት?

መልስ፦ የብሮውዘርዎ የአካባቢ ሰዓት ቀጠና — የስርዓትዎ ሰዓት የሚጠቀመው ተመሳሳይ ነው። መደበኛ cron የራሱ የሆነ የሰዓት ቀጠና አይይዝም፤ እሱን የሚያሄደው የሥራ መርሐግብር አውጪ (job scheduler) ይህንን ይወስናል፣ ስለዚህ እነዚህን ጊዜያት እንደ የራስዎ የአካባቢ መርሐግብር ቅድመ-ዕይታ አድርገው ይውሰዱት እንጂ የግድ የአገልጋዩ (server) ላይሆን ይችላል።

ጥያቄ፦ ይህ መርሐግብር መቼም ሊከሰት አይችልም የሚለው ለምንድን ነው?

መልስ፦ ብዙውን ጊዜ በተመረጠው ወር ሁሉ ውስጥ የማይገኝ የወሩ ቀን እሴት ሲሆን — ለምሳሌ፣ በወሩ መስክ ውስጥ ከሚያዝያ፣ ሰኔ፣ መስከረም ወይም ኅዳር ጋር ቀን 31ን መምረጥ። በዘረዘሯቸው ወራት ሁሉ ውስጥ የሚገኝ ቀን ይምረጡ፣ ወይም መርሐግብሩን ወደተለያዩ መግለጫዎች ይክፈሉት።