कमांड प्रॉम्प्ट (सीएमडी) एकीकरण (विंडोज़)

विंडोज़ कमांड प्रॉम्प्ट से एसटीटी (स्पीच-टू-टेक्स्ट) सीएलआई के साथ इंटरैक्ट करना आसान बनाने के लिए, आप एक s.bat बैच फ़ाइल बना सकते हैं और इसे अपने PATH पर रख सकते हैं। यह आपको किसी भी सीएमडी विंडो में बस “आपका प्रश्न” टाइप करने की अनुमति देता है।

ध्यान दें: सीएमडी (cmd.exe) विरासती विंडोज शेल है और इसमें पावरशेल या यूनिक्स शेल की तुलना में महत्वपूर्ण सीमाएं हैं। बेहतर अनुभव के लिए, इसके बजाय PowerShell Integration या WSL Integration का उपयोग करने पर विचार करें।

सेटअप निर्देश

1. अपनी व्यक्तिगत स्क्रिप्ट के लिए एक निर्देशिका बनाएं (यदि पहले से नहीं बनाई गई है)

CODE_ब्लॉक_0

2. उस निर्देशिका को अपने PATH में जोड़ें (एक बार सेटअप)

सिस्टम गुण → पर्यावरण चर खोलें और अपने उपयोगकर्ता PATH चर में %USERPROFILE%\bin जोड़ें।

वैकल्पिक रूप से, इसे एक उन्नत सीएमडी प्रॉम्प्ट में चलाएं (सीएमडी को दोबारा खोलने के बाद प्रभावी होता है):

CODE_ब्लॉक_1

3. बैच फ़ाइल बनाएँ

नोटपैड या कोई टेक्स्ट एडिटर खोलें और निम्नलिखित को %USERPROFILE%\bin\s.bat के रूप में सहेजें:

CODE_ब्लॉक_2

4. इसका परीक्षण करें

एक नई सीएमडी विंडो खोलें (ताकि अद्यतन पथ लोड हो जाए) और टाइप करें:

CODE_ब्लॉक_3

सीएमडी-विशिष्ट नोट्स

  • कोई मूल प्रक्रिया टाइमआउट नहीं: सीएमडी के पास यूनिक्स टाइमआउट के बराबर कोई नहीं है। यह स्क्रिप्ट पॉवरशेल के WaitForExit को टाइमआउट लॉजिक इनलाइन सौंपती है। पॉवरशेल उपलब्ध होना चाहिए (यह सभी आधुनिक विंडोज सिस्टम पर है)।

  • SL5NET_AURA_PROJECT_ROOT: इसे सिस्टम प्रॉपर्टीज़ के माध्यम से एक स्थायी उपयोगकर्ता पर्यावरण चर के रूप में सेट करें, या .bat फ़ाइल में पथ को हार्डकोड करें।

  • सहायक स्क्रिप्ट: update_github_ip.bat और start_service.bat आपके PATH या %USERPROFILE%\bin में मौजूद होने चाहिए। ये update_github_ip और start_service शेल फ़ंक्शंस के CMD समकक्ष हैं।

  • किविक्स स्क्रिप्ट के लिए बैश: यदि डब्लूएसएल स्थापित है, तो बैश सीएमडी में उपलब्ध है और .sh स्क्रिप्ट सीधे चलेगी। अन्यथा, kiwix-docker-start-if-not-running.sh को .bat समकक्ष में अनुकूलित करें।

  • उद्धरण प्रबंधन: सीएमडी के उद्धरण नियम सख्त और नाजुक हैं। यदि आपकी क्वेरी में विशेष वर्ण (&, |, >, <) हैं, तो पूरी क्वेरी को दोहरे उद्धरण चिह्नों में लपेटें: s "आपका और प्रश्न"

  • सेट /पी सीमा: सेट /पी केवल फ़ाइल की पहली पंक्ति पढ़ता है। मल्टी-लाइन आउटपुट के लिए, फ़ाइल को सीधे प्रिंट करने के लिए टाइप का उपयोग करें (जैसा कि लॉन्ग-टाइमआउट शाखा में किया जाता है)।

विशेषताएँ

  • डायनामिक पथ: SL5NET_AURA_PROJECT_ROOT पर्यावरण चर के माध्यम से स्वचालित रूप से पथों का समाधान करता है।

  • ऑटो-रीस्टार्ट: यदि बैकएंड डाउन है, तो start_service.bat पर कॉल करें और स्थानीय विकिपीडिया सेवाओं को शुरू करने का प्रयास करें।

  • स्मार्ट टाइमआउट्स: पहले 2-सेकंड की त्वरित प्रतिक्रिया का प्रयास करता है, फिर 70-सेकंड के डीप प्रोसेसिंग मोड पर वापस आ जाता है।