Windows Batch Scripting

विंडोज़ में समय विलंब को नियंत्रित करना: बैच फ़ाइलों को सटीक रूप से रोकना

Spread the love

अपने बैच फ़ाइलों को सटीक रूप से रोकना: विंडोज़ में समय विलंब में महारत हासिल करना

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

विषयवस्तु की तालिका

timeout कमांड का उपयोग करना

timeout कमांड बैच फ़ाइल में निष्पादन को रोकने के लिए सबसे सरल और विश्वसनीय तरीका है। यह विंडोज़ के आधुनिक संस्करणों में बनाया गया है और विलंब पर स्वच्छ, सटीक नियंत्रण प्रदान करता है।

मूल उपयोग:

timeout /t 5 /nobreak > nul
  • /t 5: 5-सेकंड का विलंब निर्दिष्ट करता है। 5 को अपने इच्छित सेकंड की संख्या से बदलें।
  • /nobreak: उपयोगकर्ता को कोई कुंजी दबाकर समय सीमा को बाधित करने से रोकता है। इसे छोड़ने पर उपयोगकर्ता विलंब को छोड़ सकता है।
  • > nul: कमांड के आउटपुट को नल डिवाइस पर रीडायरेक्ट करता है, कंसोल पर प्रदर्शित होने वाले किसी भी संदेश को दबा देता है।

उपयोगकर्ता संदेश जोड़ना:

विलंब के बाद संदेश प्रदर्शित करने के लिए:

timeout /t 10 /nobreak > nul
echo कृपया प्रतीक्षा करें...

नोट: विलंब के दौरान संदेश प्रदर्शित करने के लिए अधिक उन्नत तकनीकों की आवश्यकता होती है (उन्नत तकनीक अनुभाग देखें)।

ping कमांड का उपयोग करना (कम सटीक)

ping कमांड, जबकि मुख्य रूप से नेटवर्क निदान के लिए है, का उपयोग कम सटीक टाइमर के रूप में किया जा सकता है। यह timeout से कम विश्वसनीय है और इसकी सटीकता नेटवर्क की स्थिति पर निर्भर करती है। इस विधि का उपयोग केवल तभी करें जब timeout उपलब्ध न हो।

मूल उपयोग:

ping -n 6 127.0.0.1 > nul
  • -n 6: 6 पिंग भेजता है। प्रत्येक पिंग में लगभग एक सेकंड का समय लगता है, जिसके परिणामस्वरूप लगभग 5-सेकंड का विलंब होता है (एक पिंग तत्काल होता है)। अपने इच्छित सेकंड में 1 जोड़ें।
  • 127.0.0.1: लूपबैक पता; यह बाहरी नेटवर्क संसाधन से संपर्क करने से बचता है।
  • > nul: कमांड के आउटपुट को दबा देता है।

महत्वपूर्ण नोट: ping विधि timeout की तुलना में काफी कम सटीक है। नेटवर्क की भीड़ या अन्य कारक वास्तविक विलंब को प्रभावित कर सकते हैं।

सटीक समय के लिए उन्नत तकनीकें

बहुत सटीक समय या अधिक जटिल परिदृश्यों (जैसे विलंब के दौरान प्रगति पट्टी प्रदर्शित करना) के लिए, अधिक उन्नत स्क्रिप्टिंग तकनीकों या बाहरी उपकरणों पर विचार करें। इनमें नेस्टेड लूप, PowerShell स्क्रिप्ट या समर्पित समय लाइब्रेरी शामिल हो सकते हैं।

सामान्य समस्याओं का निवारण

  • timeout काम नहीं कर रहा है: सुनिश्चित करें कि आप विंडोज़ के अपेक्षाकृत आधुनिक संस्करण का उपयोग कर रहे हैं। पुराने संस्करणों में timeout कमांड शामिल नहीं हो सकता है।
  • timeout के साथ फ्लोटिंग-पॉइंट संख्याएँ: /t पैरामीटर केवल पूर्ण संख्याएँ स्वीकार करता है।
  • स्क्रिप्ट हैंग हो जाती है: सिंटैक्स त्रुटियों की जाँच करें, खासकर टाइमआउट कमांड के बाद। सत्यापित करें कि आप > nul का उपयोग करके आउटपुट को ठीक से रीडायरेक्ट कर रहे हैं। गलत तरीके से रखे गए कमांड भी हैंग का कारण बन सकते हैं।

यह मार्गदर्शिका आपकी बैच स्क्रिप्ट में समय विलंब के प्रबंधन के लिए प्रभावी रणनीतियाँ प्रदान करती है। अपनी आवश्यकताओं और सिस्टम क्षमताओं के अनुसार सबसे उपयुक्त विधि चुनें, इसकी सटीकता और विश्वसनीयता के लिए timeout को प्राथमिकता दें।

प्रातिक्रिया दे

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *