Cron एक्सप्रेशन एक्सप्लेनर
Cron की पंक्ति पेस्ट करें और जानें कि वह असल में कब चलती है।
- आपके ब्राउज़र में चलता है — आपका टेक्स्ट कहीं नहीं भेजा जाता
- न साइन-अप, न सीमा, जितनी बार चाहें मुफ़्त इस्तेमाल करें
यह कैसे काम करता है
Cron सिंटैक्स पाँच संक्षिप्त फ़ील्ड हैं जिन्हें लिखना आसान है और वापस पढ़ना कहीं मुश्किल, ख़ासकर किसी और का लिखा। ज़्यादातर गलतियाँ टाइपो नहीं होतीं बल्कि इस बारे में गलतफ़हमियाँ होती हैं कि कौन-सा फ़ील्ड कौन-सा है, या दो फ़ील्ड एक साथ सेट हों तो क्या होता है।
पाँच फ़ील्ड
मिनट, घंटा, महीने का दिन, महीना, सप्ताह का दिन — इसी क्रम में। सेकंड के लिए आगे का छठा फ़ील्ड कुछ शेड्यूलर इस्तेमाल करते हैं और यहाँ, अगर हो तो, अनदेखा किया जाता है। रेंज, सूचियाँ और स्टेप सब समझे जाते हैं।
महीने का दिन और सप्ताह का दिन एक साथ
यह लगभग सबको पकड़ लेता है। अगर दोनों फ़ील्ड “*” के अलावा कुछ पर सेट हैं, तो cron तब चलता है जब दोनों में से कोई एक मेल खाए, दोनों नहीं। “0 0 1 * 1” महीने की पहली तारीख़ को और हर सोमवार को चलता है, सिर्फ़ उन सोमवारों को नहीं जो पहली तारीख़ पड़ें। लागू होने पर व्याख्या यह साफ़ कहती है।
0 और 7 दोनों का मतलब रविवार है
सप्ताह के दिन का फ़ील्ड 0 से 7 तक स्वीकार करता है, दोनों सिरों का मतलब रविवार। शेड्यूल को सिस्टमों के बीच कॉपी करते समय यह एक-से-चूक वाली उलझन का आम स्रोत है।
यह समझाते हुए जाँचता भी है
सीमा से बाहर के मान, ग़लत बनी रेंज और शून्य स्टेप की रिपोर्ट उस फ़ील्ड के साथ दी जाती है जहाँ से वे आए, आत्मविश्वास भरा पर ग़लत विवरण देने की जगह।
Cron एक्सप्रेशन एक्सप्लेनर — सवाल
पाँचों फ़ील्ड का क्या मतलब है?
मिनट, घंटा, महीने का दिन, महीना और सप्ताह का दिन, इसी क्रम में।
मेरा शेड्यूल उम्मीद से ज़्यादा बार क्यों चलता है?
शायद इसलिए कि महीने का दिन और सप्ताह का दिन दोनों सेट हैं। Cron उन्हें OR मानता है, इसलिए दोनों में से कोई भी मेल खाए तो यह चलता है।
क्या रविवार 0 है या 7?
दोनों। सप्ताह के दिन का फ़ील्ड 0 से 7 तक स्वीकार करता है और दोनों सिरों को रविवार मानता है।
क्या यह सेकंड फ़ील्ड सपोर्ट करता है?
आगे लगा सेकंड फ़ील्ड, अगर हो तो, अनदेखा किया जाता है; पाँच मानक फ़ील्ड समझाए जाते हैं।