यदि आपके पास एक .BAT फ़ाइल है और आप विंडोज़ में टास्क शेड्यूलर का उपयोग करके स्वचालित रूप से चलाने के लिए इसे प्राप्त करने का प्रयास कर रहे हैं, तो आप इस समस्या में भाग सकते हैं जहां यह तब तक नहीं चलता जब तक आप मैन्युअल रूप से कार्य को नहीं चलाते।
मैंने एक बैच फ़ाइल बनाई जो कि जब भी कंप्यूटर शुरू होता है एक अस्थायी फ़ोल्डर के अंदर सब कुछ हटा देता है। मैंने टास्क शेड्यूलर में एक बुनियादी कार्य बनाया और सर्वश्रेष्ठ की उम्मीद की। दुर्भाग्य से, कुछ भी नहीं हुआ जब मेरा कंप्यूटर बूट हुआ। बहुत परीक्षण और त्रुटि के बाद, मुझे पता चला कि स्क्रिप्ट को कैसे चलाना है।
इस लेख में, मैं आपको मैन्युअल बैचों के बिना चलने के लिए अपनी बैच फ़ाइल प्राप्त करने के लिए सेटिंग्स और अनुमतियों के माध्यम से आपको समायोजित करने की आवश्यकता है।
चरण 1: फ़ाइल / फ़ोल्डर अनुमतियों की जाँच करें
इस समस्या को हल करने के लिए पहला चरण यह सुनिश्चित कर रहा है कि टास्क शेड्यूलर में स्क्रिप्ट को चलाने के लिए आप जिस खाते का उपयोग कर रहे हैं, उसमें स्क्रिप्ट, स्वयं स्क्रिप्ट, और कोई फ़ोल्डर / फ़ाइलें जो स्क्रिप्ट के स्पर्श होने पर चलती है, पर पूर्ण नियंत्रण अनुमतियाँ हैं।
उदाहरण के लिए, मैंने नीचे दी गई बैच स्क्रिप्ट बनाई:
सेट फोल्डर = "C: \ test" cd / d% folder% for / F "delims =" %% i in ('dir / b') do (rmdir "%% i" / s / q || del "%) % i "/ s / q)
मैंने .BAT फ़ाइल को अपने दस्तावेज़ फ़ोल्डर में सहेजा है। पथ C: \ Users \ उपयोगकर्ता नाम \ दस्तावेज़ है । मैं C: \ Users \ उपयोगकर्ता नाम, दस्तावेज़ फ़ोल्डर पर राइट-क्लिक किया और गुण पर क्लिक किया। फिर मैंने सिक्योरिटी टैब पर क्लिक किया।
जैसा कि आप देख सकते हैं, उपयोगकर्ता खाता असीम को स्पष्ट रूप से जोड़ा गया है और पूर्ण नियंत्रण अनुमति दी गई है। अब आपको उस फ़ोल्डर के लिए एक ही काम करना होगा जिसमें स्क्रिप्ट शामिल है और स्क्रिप्ट के लिए ही है। बस यह मत समझो कि यदि आप स्क्रिप्ट वाले फ़ोल्डर को अनुमति देते हैं, तो आप जाने के लिए अच्छा है, क्योंकि आप नहीं हैं। अंत में, किसी भी फाइल और फोल्डर पर अनुमतियाँ सेट करें, जो स्क्रिप्ट के साथ इंटरैक्ट करेगी।
मेरे मामले में, मुझे C: \ test में जाना था, उस फ़ोल्डर पर राइट-क्लिक करें और वहां अपना उपयोगकर्ता खाता पूर्ण नियंत्रण अनुमतियों के साथ जोड़ें। यह कष्टप्रद है कि आपको यह करना है, लेकिन यह स्क्रिप्ट को चलाने का एकमात्र तरीका है।
नोट : स्क्रिप्ट को चलाने के लिए जिस खाते का उपयोग किया जा रहा है, वह कंप्यूटर पर स्थानीय प्रशासकों के समूह का हिस्सा होना चाहिए। मेरे मामले में, Aseem खाता एक व्यवस्थापक खाता है और इसलिए स्थानीय व्यवस्थापकों के समूह का हिस्सा है।
चरण 2: कार्य शेड्यूलर सेटिंग्स की जाँच करें
अब टास्क शेड्यूलर पर जाएं और वहां उपयुक्त सेटिंग्स बदलें। टास्क शेड्यूलर खोलें और एक्टिव टास्क सेक्शन के तहत अपना काम खोजें। उन्हें वर्णमाला क्रम में सूचीबद्ध किया जाना चाहिए।
इस पर डबल-क्लिक करें और यह एक ही विंडो में कार्य को स्वयं खोल देगा। कार्य को संपादित करने के लिए, आपको उस पर राइट-क्लिक करना होगा और गुण चुनना होगा।
कई टैब हैं और कुछ चीजों को यहां जांचना और बदलना है। सबसे पहले, सामान्य टैब पर, आपको उस उपयोगकर्ता खाते की जांच करने की आवश्यकता है जिसका उपयोग कार्य को चलाने के लिए किया जा रहा है। मेरे मामले में, यह Aseem खाता है, जिसे मैंने पहले फ़ाइल सिस्टम पर अनुमति दी थी और जो कंप्यूटर पर व्यवस्थापक समूह का हिस्सा है।
अगला, आपको रन चुनना होगा कि उपयोगकर्ता लॉग ऑन है या नहीं विकल्प और बॉक्स के लिए कॉन्फ़िगर में विंडोज विस्टा, विंडोज सर्वर 2008 चुनें ।
क्रियाएँ टैब पर, आपको स्क्रिप्ट का चयन करना होगा, संपादन पर क्लिक करना होगा और फिर वें e में स्क्रिप्ट वाले फ़ोल्डर में पथ को जोड़ना होगा (वैकल्पिक) बॉक्स में प्रारंभ करें । यह अनावश्यक लग सकता है, लेकिन ऐसा नहीं है। मेरे मामले में, मैंने बॉक्स में C: \ Users \ Aseem \ Documents \ डाल दिया।
अब सेटिंग्स को सेव करने के लिए ओके पर क्लिक करें। जब आप ऐसा करते हैं, तो एक संवाद प्रकट हो सकता है जहां आपको उस उपयोगकर्ता खाते के लिए पासवर्ड दर्ज करना होगा जो कार्य चलाएगा। यह एक और आवश्यकता लाता है। आप उस खाते का उपयोग नहीं कर सकते हैं जिसमें पासवर्ड नहीं है। कार्य को चलाने के लिए उपयोगकर्ता खाते में एक पासवर्ड होना चाहिए।
अंत में, आपको टास्क शेड्यूलर में एक बार मैन्युअल रूप से कार्य चलाना चाहिए ताकि यह सुनिश्चित हो सके कि यह चलता है। यदि आप सभी सेटिंग्स को बदलने के बाद मैन्युअल रूप से ठीक चलते हैं, तो इसे तब चलाया जाना चाहिए जब इसे ट्रिगर किया जाना चाहिए। मेरे मामले में, यह स्टार्टअप पर होना चाहिए था और मैंने बदलाव करने के बाद सब कुछ ठीक किया।
ध्यान दें कि यदि आपकी स्क्रिप्ट रन करते समय किसी डोमेन में विभिन्न कंप्यूटरों तक पहुँच रही है, तो आपको कार्य चलाने के लिए डोमेन व्यवस्थापक खाते का उपयोग करने का प्रयास करना चाहिए। यह सुनिश्चित करेगा कि दूरस्थ कंप्यूटर तक पहुँचने के लिए खाते में पर्याप्त अनुमति हो।
नोट करने के लिए एक और आइटम है यदि आपकी स्क्रिप्ट नेटवर्क साझा पर संसाधनों तक पहुंचती है। यदि आपकी स्क्रिप्ट नेटवर्क का उपयोग करने के लिए अक्षरों का उपयोग कर रही है, तो यह नहीं चल सकता है। उदाहरण के लिए, F: \ data \ का उपयोग करने के बजाय, आपको स्क्रिप्ट में \\ machinename \ share_name \ data \ का उपयोग करना चाहिए। यदि आपको अभी भी अपनी स्क्रिप्ट चलाने के लिए नहीं मिल रही है, तो यहां एक टिप्पणी पोस्ट करें और मैं मदद करने की कोशिश करूंगा। का आनंद लें!