Skip to content

टास्क शेड्यूलर (Task Scheduler) सुविधा का परिचय

टास्क शेड्यूलर का उपयोग WSL में नियमित कार्यों को स्वचालित करने के लिए किया जाता है, जिससे बार-बार होने वाले मैन्युअल रखरखाव कार्यों से बचा जा सकता है। यह एक दृश्य प्रबंधन इंटरफ़ेस प्रदान करता है जिससे आप जटिल कमांड-लाइन पैरामीटर याद किए बिना शेड्यूल किए गए कार्य बना और प्रबंधित कर सकते हैं।

इस सुविधा के उदाहरण परिदृश्य:

  • नियमित रूप से WSL वितरणों का बैकअप लेना
  • कस्टम स्क्रिप्ट या कमांड निष्पादित करना

सभी कार्य केंद्रीकृत प्रबंधन और देखने के लिए विंडोज टास्क शेड्यूलर में \WSLDashboard\UserTasks\ पथ के अंतर्गत एकत्र किए जाते हैं। आप इंटरफ़ेस में रीयल-टाइम में कार्य की स्थिति (तैयार / चल रहा / अक्षम) देख सकते हैं।

सामुदायिक स्क्रिप्ट

आप त्वरित आरंभ के लिए सामुदायिक रिपॉजिटरी से उदाहरण स्क्रिप्ट (बैकअप वितरण) डाउनलोड कर सकते हैं:

https://github.com/owu/wsl-community

यह एक सामुदायिक-संचालित कोड रिपॉजिटरी है। स्क्रिप्ट योगदान करने या सर्वोत्तम अभ्यास साझा करने के लिए Pull Request का स्वागत है।

कमांड निष्पादित करें

कमांड कॉन्फ़िगरेशन

प्रत्येक शेड्यूल किए गए कार्य को एक कमांड (स्क्रिप्ट या निष्पादन योग्य) के साथ कॉन्फ़िगर किया जा सकता है, जो निम्नलिखित विकल्पों का समर्थन करता है:

सेटिंगविवरण
कमांडस्क्रिप्ट या निष्पादन योग्य का पथ। .bat, .ps1, .cmd, .exe, .py प्रारूपों का समर्थन करता है। फ़ाइल चुनने के लिए "ब्राउज़" बटन का उपयोग करें।
आर्गुमेंटकमांड को भेजे जाने वाले अतिरिक्त आर्गुमेंट, वैकल्पिक।
व्यवस्थापक अधिकारों के साथ चलाएँसक्षम होने पर, कार्य उच्चतम विशेषाधिकारों के साथ चलता है, उन कार्यों के लिए उपयुक्त जिनमें UAC एलिवेशन की आवश्यकता होती है।

कार्य संचालन

कार्य बनाने के बाद, आप निम्नलिखित कार्य कर सकते हैं:

क्रियाविवरण
अभी चलाएँशेड्यूल नियमों की परवाह किए बिना कार्य को तुरंत निष्पादित करने के लिए बाध्य करें।
सक्षम/अक्षम करेंकार्य के स्वचालित शेड्यूल को रोकें या फिर से शुरू करें।
हटाएँटास्क शेड्यूलर से कार्य हटाएँ।

शेड्यूल नियम

क्रोन एक्सप्रेशन

कार्य शेड्यूलिंग निष्पादन नियमों को परिभाषित करने के लिए मानक 5-फ़ील्ड क्रोन एक्सप्रेशन का उपयोग करता है, प्रारूप इस प्रकार है:

मिनट घंटा दिन महीना सप्ताह का दिन
फ़ील्डसीमाविवरण
मिनट0 - 59घंटे का कौन सा मिनट निष्पादित होगा
घंटा0 - 23दिन का कौन सा घंटा निष्पादित होगा
दिन1 - 31महीने का कौन सा दिन निष्पादित होगा
महीना1 - 12साल का कौन सा महीना निष्पादित होगा
सप्ताह का दिन0 - 70 और 7 दोनों रविवार को दर्शाते हैं

प्रत्येक फ़ील्ड निम्नलिखित सिंटैक्स का समर्थन करता है:

  • * —— सभी मानों से मेल खाता है (उदाहरण: * * * * * का अर्थ है प्रति मिनट एक बार निष्पादित)
  • */N —— प्रति N इकाई पर एक बार निष्पादित (उदाहरण: */5 * * * * का अर्थ है प्रति 5 मिनट में एक बार निष्पादित)
  • एकल संख्या —— किसी विशिष्ट मान से मेल खाता है (उदाहरण: 0 9 * * 1 का अर्थ है प्रत्येक सोमवार सुबह 9:00 बजे निष्पादित)

नोट: अल्पविराम से अलग किए गए एकाधिक मान (जैसे 1,15) और रेंज एक्सप्रेशन (जैसे 1-5) समर्थित नहीं हैं। अधिक सीमाओं के लिए कृपया नीचे दिए गए सावधानियाँ देखें।

समर्थित संयोजन पैटर्न

यह सॉफ़्टवेयर मूल Cron डेमॉन नहीं चलाता, बल्कि Cron एक्सप्रेशन को Windows कार्य शेड्यूलर (schtasks.exe) के ट्रिगर पैरामीटर में अनुवादित करता है। सटीक मैपिंग के लिए, पार्सर में केवल निम्नलिखित 7 संयोजन पैटर्न हार्डकोड करके समर्थित हैं, जो अधिकांश निर्धारित कार्य परिदृश्यों को कवर करते हैं:

#पैटर्नविवरणउपयुक्त परिदृश्य
1* * * * *प्रति मिनट निष्पादितनिगरानी, रीयल-टाइम डिटेक्शन कार्य
2*/N * * * *प्रति N मिनट में एक बार निष्पादितआवधिक जांच कार्य
3M * * * *प्रति घंटे के Mवें मिनट पर निष्पादित (जैसे 3 * * * *)घंटेवार कार्य
4M H * * *प्रतिदिन H बजे M मिनट पर निष्पादित (जैसे 0 3 * * *)दैनिक रखरखाव, जैसे प्रतिदिन सुबह लॉग साफ़ करना
5M H * * DOWप्रति सप्ताह विशिष्ट दिन H बजे M मिनट पर निष्पादित (जैसे 0 12 * * 1)साप्ताहिक रूटीन कार्य, जैसे प्रति सोमवार डेटा बैकअप
6M H D * *प्रति माह विशिष्ट तिथि पर H बजे M मिनट पर निष्पादितमासिक कार्य, जैसे प्रति माह 1 तारीख को रिपोर्ट तैयार करना
7M H D MON *प्रति वर्ष विशिष्ट माह और तिथि पर H बजे M मिनट पर निष्पादितवार्षिक कार्य, जैसे निर्दिष्ट माह में निष्पादित

यदि एक्सप्रेशन उपरोक्त 7 पैटर्न में से नहीं है, तो सिस्टम इसे Unsupported cron pattern मानकर बनाने से मना कर देगा।

सावधानियाँ

चूंकि अंतर्निहित रूप से Windows कार्य शेड्यूलर पर आधारित है, इस सॉफ़्टवेयर का Cron पार्सर मानक Linux Cron से निम्नलिखित अंतर रखता है:

1. सूची (,) और रेंज (-) समर्थित नहीं

मानक Cron अल्पविराम द्वारा कई离散 समय बिंदु परिभाषित करने की अनुमति देता है (जैसे 1,15,30 * * * * का अर्थ है 1, 15, 30वां मिनट), या हाइफ़न द्वारा रेंज परिभाषित करने की अनुमति देता है (जैसे 1-5 * * * * का अर्थ है पहला से पाँचवाँ मिनट)।

इस सॉफ़्टवेयर की सीमा: प्रत्येक फ़ील्ड में केवल एकल संख्या, तारांकन (*) या चरण (*/N) भरा जा सकता है, अल्पविराम और हाइफ़न समर्थित नहीं हैं।

2. मुक्त संयोजन समर्थित नहीं

मानक Cron किसी भी फ़ील्ड के मुक्त संयोजन की अनुमति देता है (जैसे * 3 * * * का अर्थ है प्रतिदिन सुबह 3 बजे के घंटे का प्रत्येक मिनट), लेकिन यह सॉफ़्टवेयर केवल ऊपर सूचीबद्ध 7 निश्चित पैटर्न का समर्थन करता है, इस सीमा से बाहर के एक्सप्रेशन को अस्वीकार कर दिया जाएगा।

3. चरण पैटर्न का समय संरेखण अंतर

मानक Cron में, */5 * * * * कड़ाई से घड़ी के 0, 5, 10, 15... मिनटों के साथ संरेखित होता है। यह सॉफ़्टवेयर इसे Windows के /SC MINUTE /MO 5 पैरामीटर में अनुवादित करता है, Windows की प्रक्रिया तर्क कार्य निर्माण या सक्रियण के क्षण से अंतराल की गणना करना है।

उदाहरण के लिए, यदि आप 10:02 पर प्रति 5 मिनट चलने वाले कार्य को सहेजते और सक्रिय करते हैं, तो यह पहली बार 10:07 पर निष्पादित होगा, फिर 10:12 पर, मानक घड़ी के 10:05 के साथ संरेखित हुए बिना।