चलने से पहले Cron शेड्यूल को समझें
Cron expressions सर्वरों, CI जॉब्स, ऑटोमेशन प्लेटफ़ॉर्म और रखरखाव स्क्रिप्टों द्वारा उपयोग की जाने वाली संकुचित शेड्यूलिंग स्ट्रिंग्स हैं। वे शक्तिशाली हैं, लेकिन एक छोटा टाइपो एक कार्य को दैनिक से हर मिनट या सप्ताह के दिनों से सप्ताहांत में बदल सकता है।
यह पार्सर Unix 5-field cron expression को साधारण भाषा में समझाता है, प्रत्येक फील्ड को तोड़ता है, और उस timezone में आगामी रन समय दिखाता है जिसे आप टूल में चुनते हैं।
समर्थित cron डायलेक्ट
v1 पार्सर मानक Unix cron का समर्थन करता है जिसमें पाँच फील्ड होते हैं:
minute hour day-of-month month day-of-week - मिनट मान
0to59. - घंटे के मान
0to23. - महीने के दिन के मान
1to31. - महीने के मान
1to12जैसे नामों के अलावा,JANandDEC. - सप्ताह के दिन के मान
0to7जैसे नामों के अलावा,MONandFRI. दोनों0and7रविवार का अर्थ होता है।
यह wildcards, comma lists, ranges, और step values जैसे का समर्थन करता है */15 or 9-17/2.
क्या जानबूझकर समर्थित नहीं है
Cron डायलेक्ट सार्वभौमिक नहीं हैं। Quartz, systemd timers, cloud schedulers, Kubernetes, GitHub Actions, और होस्टिंग प्लेटफ़ॉर्म अपने स्वयं के फील्ड या विशेष ऑपरेटर जोड़ सकते हैं।
- Seconds फील्ड और year फील्ड को Unix cron के रूप में पार्स नहीं किया जाता है।
- Quartz ऑपरेटर जैसे
?,L,Wऔर#असमर्थित के रूप में रिपोर्ट किए जाते हैं। - Macros जैसे
@dailyand@rebootविस्तारित नहीं किए जाते। - एक शेड्यूल के बाद command टेक्स्ट को expression के हिस्से के रूप में माना नहीं जाता है।
Unix-शैली के शेड्यूल के लिए इस पृष्ठ का उपयोग एक इंस्पेक्टर के रूप में करें। प्रोडक्शन ऑटोमेशन बदलने से पहले, उस सटीक शेड्यूलर की पुष्टि करें जो जॉब चलाएगा।
टाइमज़ोन और डे लाइट सेविंग व्यवहार
एक cron expression अपने आप में कोई timezone नहीं शामिल करता। यही expression अलग-अलग क्षणों पर चल सकता है, यह इस बात पर निर्भर करता है कि सर्वर UTC, एक स्थानीय सिस्टम टाइमज़ोन, या किसी शेड्यूलर-विशिष्ट टाइमज़ोन सेटिंग का उपयोग करता है या नहीं।
- पूर्वावलोकन चुनी हुई IANA timezone और UTC में रन समय दिखाता है।
- स्प्रिंग-फॉरवर्ड संक्रमण ऐसे स्थानीय वॉल-घड़ी समयों को छोड़ सकते हैं जो मौजूद नहीं होते।
- फॉल-बैक संक्रमण एक स्थानीय घड़ी समय को दोहराए सकते हैं; शेड्यूलर का व्यवहार अलग हो सकता है।
- यदि day-of-month और day-of-week दोनों प्रतिबंधित हैं, तो Unix cron आमतौर पर OR semantics का उपयोग करता है।
महत्वपूर्ण जॉब्स के लिए, पूर्वावलोकन को एक नियोजन सहायता के रूप में मानें और शेड्यूलर में व्यवहार की पुष्टि करें।
अक्सर पूछे जाने वाले प्रश्न
क्या यह Quartz cron का समर्थन करता है?
नहीं। पार्सर केवल Unix 5-field cron का समर्थन करता है। Quartz-शैली के seconds फील्ड, year फील्ड, और ऑपरेटर जैसे ?, L, Wऔर # असमर्थित के रूप में दिखाए जाते हैं।
एक cron expression किस timezone का उपयोग करता है?
Cron expressions टाइमज़ोन जानकारी नहीं ले जाते। पूर्वावलोकन उस timezone का उपयोग करता है जिसे टूल में चुना गया है, लेकिन आपका सर्वर या शेड्यूलर अलग timezone उपयोग कर सकता है।
क्यों day-of-month और day-of-week दोनों मैच कर सकते हैं?
सामान्य Unix cron व्यवहार में, जब दोनों फील्ड प्रतिबंधित होते हैं, तो कोई तारीख तब मैच कर सकती है यदि या तो फील्ड मैच करता है। उदाहरण के लिए, 0 0 1 * MON मास के पहले दिन और सोमवार को चल सकता है।
क्या मैं crontab से command भाग पेस्ट कर सकता हूँ?
केवल पाँच शेड्यूल फील्ड पेस्ट करें। टूल एक शेड्यूल पार्सर है, न कि पूर्ण crontab पार्सर, इसलिए शेड्यूल के बाद का command टेक्स्ट व्याख्यायित नहीं किया जाता है।