2017-02-17 21 views
12

स्थापित NPM के साथ एक .bat फ़ाइल बनाने मैं //npminstall.batआदेश

npm install 
echo hello 

जब मैं Windows 10 कमांड लाइन (डॉस) से निम्न आदेश चला npminstall.bat, निम्न फ़ाइल

बनाया npm install कमांड आग, लेकिन echo hello आग नहीं है। मैंने इस npm install; जैसी पहली पंक्ति के बाद अर्ध-रंग डालने का प्रयास किया, लेकिन जो कुछ भी हुआ वह मुझे एनपीएम के सहायता निर्देश दे रहा था।

npm install के बाद मुझे दूसरी पंक्ति echo hello पर आग लगने के लिए कैसे मिलता है?

अतिरिक्त नोट्स

मैं ने पाया है कि यह भी एक ही व्यवहार का कारण बनता है:

//npminstall.bat

webpack 
echo hello 

मुझे लगता है कि ऐसा इसलिए है क्योंकि दोनों npm install कमान और webpack आदेश निष्पादित करने में समय लगता है, और उस समय के दौरान यह दूसरी चीज की अपेक्षा नहीं करता है।

फॉलोअप 2

//npminstall.bat
START /WAIT npm install 
echo hello 

यह लगभग मुझे क्या करना चाहते हो रहा है। एनपीएम इंस्टॉलेशन कमांड को छोड़कर पॉप अप विंडो का कारण बनता है, और मुझे हैलो वर्ल्ड को इको करने के लिए निष्पादन जारी रखने से पहले टीएच पॉप अप विंडो बंद करना होगा। क्या मैं पॉपअप विंडो से छुटकारा पा सकता हूं?

+0

क्या हुआ अगर आप अपनी .bat फ़ाइल में 'हैलो इंस्टॉल' को 'echo हैलो' में बदलते हैं तो क्या हुआ? उस मामले में स्क्रिप्ट आउटपुट क्या है? – Sharkman

+4

का उपयोग करें: 'कॉल एनपीएम इंस्टॉल करें' – Squashman

+0

@ स्क्वैशमैन यह सोचता है कि ऐसा हुआ। यदि आप इसके साथ जवाब देते हैं, तो मैं स्वीकृत उत्तर के रूप में चयन करूंगा – John

उत्तर

24

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

call npm install