CMD.EXE आंतरिक कमांड के बजाय PATH पर बल विंडोज का उपयोग .EXE


9

जब मैं आंतरिक कमांड के रूप में एक ही नाम के साथ एक कमांड निष्पादित करता हूं, तो पथ में खोज करने के बजाय विंडोज केवल CMD.EXE में पाए गए एक का उपयोग करता है।

उदाहरण के लिए, MKDIR एक आंतरिक कमांड है जिसे बनाया गया है CMD.EXE। यह यूनिक्स संस्करण (जैसे -pऔर --help) के समान विकल्पों का समर्थन नहीं करता है । अगर मैं इन विकल्पों का उपयोग करता हूं, तो Windows बस -p या --help नाम की फाइलें बनाएगा, भले ही मेरे पास निर्देशिका में एक निर्देशिका में स्थापित mkdir का GNU संस्करण हो ।

टर्मिनल के माध्यम से mkdir का उपयोग करने वाले कुछ कार्यक्रमों के साथ काम करते समय यह एक मुद्दा बन जाता है । उदाहरण के लिए, गद्य के लिए गल्पफाइल में तीन mkdir -pकमांड होते हैं, -pजो कार्यशील निर्देशिका में एक फ़ोल्डर बनाते हैं और फिर त्रुटियों को फेंक देते हैं। मुझे gulpfile को मैन्युअल रूप से संपादित करना होगा जैसे कि यह स्थापित mkdir.exe का उपयोग करता है , जिससे मेरे लिए अपने फ़ॉर्क क्रॉस-प्लेटफ़ॉर्म को साझा करना कठिन हो जाता है।

मैं mkdir.exeCMD.EXE के बजाय PATH में पाए गए उपयोग के लिए विंडोज शेल को कैसे मजबूर कर सकता हूं ?

जवाबों:


14

मैं CMD.EXE के बजाय PATH में पाए गए mkdir.exe का उपयोग करने के लिए विंडोज शेल को कैसे बाध्य कर सकता हूं?

डबल-कोट्स में निष्पादन योग्य नाम को घेरें। उदाहरण के लिए:

"MKDIR"

यह विंडोज को आंतरिक कमांड चलाने के बजाय आपके निष्पादन योग्य देखने के लिए मजबूर करता है। यदि आपके पास ऐसे पैरामीटर हैं जिनमें दोहरे उद्धरण चिह्नों की भी आवश्यकता होती है, तो इस सिंटैक्स का उपयोग करें:

"MKDIR" -firstParam "C:\foobar\long file name.ext"

1
वैकल्पिक रूप से आपको उस mddir प्रोग्राम के लिए पूर्ण पथ निर्दिष्ट करने में सक्षम होना चाहिए जिसे आप कॉल करना चाहते हैं।
davidgo

दुर्भाग्य से यह काम नहीं करता है। यह क्या करता है यह वर्तमान निर्देशिका में ".exe" नामक एक नई फ़ाइल बनाता है। @davidgo मैं पूरे रास्ते को निर्दिष्ट कर सकता हूं, लेकिन यह मेरे कोड को दूसरों के साथ साझा करने के साथ एक मुद्दा बन जाता है: हर किसी के पास mkdid में स्थित नहीं है C:\Program Files (x86)\Git\bin\mkdir.exe!
umop aplsdn

2
डबल कोट्स में घेर कर काम करता है! आपको एक्सटेंशन को निर्दिष्ट करने की भी आवश्यकता नहीं है - बस "mkdir"। धन्यवाद!
umop aplsdn
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.