2012-03-13 7 views
7

मैं एक क्रॉन नौकरी बनाना चाहता हूं जो हर एक्स सप्ताह और एक विशिष्ट सप्ताह के दिनों में चलता है। उदाहरण के लिए: हर रविवार और सोमवार को आधी रात को हर 2 सप्ताह चलाएं।क्रॉन जॉब प्रत्येक एक्स सप्ताह और विशिष्ट दिनों पर चलाता है

क्रॉन अभिव्यक्ति प्रत्येक "योजना" के लिए संग्रहीत की जाती है और मैं दिए गए क्रॉन अभिव्यक्ति की तिथियां उत्पन्न करने के लिए SQL Server 2008 में ncrontab फ़ंक्शन का उपयोग करता हूं।

क्या इसके लिए कोई अभिव्यक्ति है? या यहां तक ​​कि कई अभिव्यक्तियों में शामिल हो?

मैं निम्नलिखित अभिव्यक्ति का उपयोग करने की कोशिश की है, लेकिन यह हमेशा महीनों

में एक ही दिन देता है
0 0 1/14 * * 

2012-01-01 00:00:00.000 
2012-01-15 00:00:00.000 
2012-01-29 00:00:00.000 
2012-02-01 00:00:00.000 
2012-02-15 00:00:00.000 
2012-02-29 00:00:00.000 

संपादित करें:
मैं हर x दिनों/सप्ताह की पुनरावृत्ति और मुख्य लिए देख रहा था क्रॉन के साथ समस्या यह है कि यह हर बार महीने के पहले दिन पुनरावृत्ति को रीसेट करता है। उदाहरण के लिए, यदि मैं हर 3 दिनों के लिए 2 9वीं पर पुनरावृत्ति शुरू करता हूं, तो अगली घटना अगले महीने का पहला दिन होगा।

मैं अगले समाधान के लिए क्रॉन उपेक्षित किया है: http://www.codeproject.com/Articles/20343/Recurring-Date-Generator-with-Pattern-Coding

उत्तर

1

0 0 * * 0/2,1/2

0 और 1 कोशिश कर रहे हैं रविवार और सोमवार को, और /2 'हर दूसरे'

संपादित है:

क्रॉन में अधिक शोध के बाद, उपरोक्त गलत becau है से /2 चरण (हर दूसरे मूल्य) को इंगित करता है, इसलिए 0/20,2,4,6 के बराबर है, और 0/2,1/20,1,2,3,4,5,6,7 के समतुल्य है जो बताता है कि आपने सप्ताह के हर दिन के रूप में इसका अर्थ क्यों देखा।

1/14 ऊपर अपने उदाहरण में महीने की 1, 14 से वेतन वृद्धि के साथ शुरू करने का मतलब है, 1,15,29

कहा जा रहा है उपज, अगर यह एक * nix crontab के लिए थे, तो आप छोटी से छोटी किया गया है हो सकता है 0 0 * * Sun,Mon check_if_should_run.sh && the_script_to_run.sh जैसे कुछ होने के साथ शेड्यूल करें। एनक्रॉन्टाब का उपयोग करके, मैं हर दूसरे सप्ताह के परिदृश्य को स्थापित करने के तरीके के बारे में नहीं सोच सकता।

+1

मैंने कोशिश की है और मुझे रविवार से शुरू होने पर हर दिन पुनरावृत्ति मिलती है। यदि मैं 0 0 * * 0/2 कोशिश करता हूं, तो यह मुझे हर रविवार और हर दो दिनों का पुनरावृत्ति देता है –

संबंधित मुद्दे