Node.js में कमांड लाइन से तर्क कैसे पारित करें?

Node Js Mem Kamanda La Ina Se Tarka Kaise Parita Karem



कुछ मामलों में, उपयोगकर्ता को कमांड लाइन से लॉन्चिंग प्रक्रिया के दौरान Node.js एप्लिकेशन को कॉन्फ़िगर करने के लिए अतिरिक्त जानकारी देने की आवश्यकता होती है। ऐसा करने के लिए, उपयोगकर्ता उस जानकारी को निष्पादन कमांड के साथ पास करता है ' नोड <फ़ाइलनाम> इसे बाह्य में लिखने के बजाय '.जेएस' फ़ाइल जिसमें सभी स्रोत कोड लिखे गए हैं। वह जानकारी एक स्ट्रिंग, संख्याएँ, तर्क और बहुत कुछ हो सकती है।

यह पोस्ट Node.js में कमांड लाइन से तर्क पारित करने के लिए सभी संभावित पहलुओं को सूचीबद्ध करेगी।







पूर्व आवश्यकताएँ: किसी भी विधि के व्यावहारिक कार्यान्वयन के लिए आगे बढ़ने से पहले, सबसे पहले एक ' बनाएं। जे एस किसी भी नाम की फ़ाइल बनाएं और उसमें सभी स्रोत कोड लिखें। यहां, हमने एक ' बनाया है अनुक्रमणिका .js” फ़ाइल।



Node.js में कमांड लाइन से तर्क कैसे पारित करें?

कमांड लाइन से तर्क पारित करने के लिए ' का उपयोग करें प्रक्रिया .argv” संपत्ति। “ argv 'की अंतर्निहित संपत्ति है' प्रक्रिया ' मॉड्यूल जिसका उपयोग ' का उपयोग करके Node.js एप्लिकेशन चलाते समय कमांड लाइन से तर्क पारित करने के लिए किया जाता है नोड <फ़ाइलनाम> ' आज्ञा।



वाक्य - विन्यास

'का सामान्यीकृत वाक्यविन्यास प्रक्रिया .argv” संपत्ति यहां लिखी गई है:





प्रक्रिया। argv

पैरामीटर: प्रक्रिया .argv” एक ऐसी संपत्ति है जो किसी भी पैरामीटर का समर्थन नहीं करती है।

प्रतिलाभ की मात्रा: प्रक्रिया .argv” संपत्ति मानक आउटपुट के रूप में एक सरणी देती है जिसमें निम्नलिखित तत्व होते हैं:



  • प्रक्रिया.argv[0]: यह निष्पादन योग्य फ़ाइल के पथ का प्रतिनिधित्व करता है।
  • प्रक्रिया.argv[1]: यह '''' के मार्ग को दर्शाता है। जे एस ' फ़ाइल।
  • प्रक्रिया.argv[2]: यह पहले तर्क को निर्दिष्ट करता है जिसे 'के साथ पारित किया जाता है' नोड<फ़ाइलनाम> ' आज्ञा।
  • प्रक्रिया.argv[3]: यह दूसरे तर्क को निर्दिष्ट करता है जिसे 'के साथ पारित किया जाता है' नोड<फ़ाइलनाम> ' आज्ञा।

टिप्पणी : उपयोग करते समय पहले दो तत्व हमेशा डिफ़ॉल्ट रूप से प्रदर्शित होते हैं 'प्रक्रिया.argv' संपत्ति भले ही उपयोगकर्ता कोई तर्क पारित न करे।

अब, 'लागू करें प्रक्रिया .argv” संपत्ति व्यावहारिक रूप से कमांड लाइन से तर्क पारित करने के लिए है।

उदाहरण 1: कमांड लाइन से स्ट्रिंग तर्कों को पारित करने के लिए 'process.argv' प्रॉपर्टी को लागू करना

यह उदाहरण 'पर लागू होता है प्रक्रिया.argv नीचे दिए गए कोड ब्लॉक की मदद से कमांड लाइन से स्ट्रिंग्स को तर्क के रूप में पास करने की संपत्ति:

के लिए ( चलो मैं = 0 ; मैं < प्रक्रिया। argv . लंबाई ; ++ मैं ) {
सांत्वना देना। लकड़ी का लट्ठा ( `सूचकांक $ { मैं } तर्क -> $ { प्रक्रिया। argv [ मैं ] } ` ) ;
}

उपरोक्त कोड पंक्तियों में:

  • के लिए 'लूप को इनिशियलाइज़्ड, कंडीशन और इंक्रीमेंट स्टेटमेंट के साथ परिभाषित किया गया है।
  • में ' के लिए 'लूप की स्थिति, ' प्रक्रिया.argv 'संपत्ति' के साथ संयोजित है लंबाई ' प्रत्येक तर्क मान को ' के साथ पारित करने के लिए संपत्ति नोड <फ़ाइलनाम> ' आज्ञा।
  • के अंदर ' के लिए 'लूप, ' कंसोल.लॉग() 'विधि प्रत्येक तर्क मान को उसके सूचकांक के साथ प्रदर्शित करती है।

उत्पादन

चलाएँ ' अनुक्रमणिका .js” फ़ाइल को निम्न कमांड का उपयोग करें और इसके साथ स्ट्रिंग्स को तर्क के रूप में भी पास करें:

नोड सूचकांक. जे एस Linuxhint में आपका स्वागत है

निम्नलिखित आउटपुट पहले निष्पादन योग्य और ' दिखाता है। जे एस 'फ़ाइल का पथ और फिर उन स्ट्रिंग्स को प्रदर्शित करता है जो उनके अनुक्रमणिका के साथ तर्क के रूप में पारित की जाती हैं:

उदाहरण 2: तर्क के रूप में पारित दो संख्याओं को जोड़ने के लिए 'process.argv' संपत्ति को लागू करना

यह उदाहरण दो संख्याओं पर अंकगणितीय जोड़ ऑपरेशन करता है जिन्हें तर्क के रूप में पारित किया जाता है:

था बहस = प्रक्रिया। argv
समारोह जोड़ना ( , बी ) {
वापस करना parseInt ( ) + parseInt ( बी )
}
था जोड़ = जोड़ना ( बहस [ 2 ] , बहस [ 3 ] )
सांत्वना देना। लकड़ी का लट्ठा ( '1,9 का जोड़ है' , जोड़ )

उपरोक्त कोड स्निपेट में:

  • बहस 'वेरिएबल' का उपयोग करता है प्रक्रिया कमांड लाइन से तर्क लेने के लिए .argv” संपत्ति।
  • अगला, ' जोड़ना ()'' के साथ फ़ंक्शन ए', और 'बी 'पैरामीटर लागू होता है' parseInt ()' विधि जो उपयोगकर्ता द्वारा दर्ज किए गए मान को एक स्ट्रिंग के रूप में पार्स करती है और पहला पूर्णांक पुनर्प्राप्त करती है।
  • उसके बाद, ' जोड़ 'वेरिएबल' को कॉल करता है जोड़ना ()' फ़ंक्शन को पास करके तर्क [2]', और ' तर्क [3]' का ' प्रक्रिया .argv” संपत्ति।
  • अंत में, ' सांत्वना देना .log()'' विधि '' प्रदर्शित करती है जोड़ लौटाए गए सरणी के पहले और दूसरे तत्वों के रूप में परिवर्तनीय मान।

उत्पादन

आरंभ करें ' अनुक्रमणिका .js' फ़ाइल बनाएं और उन संख्याओं को तर्क के रूप में पास करें जिन्हें उपयोगकर्ता जोड़ना चाहता है:

नोड सूचकांक. जे एस 1 9

आउटपुट उन दो संख्याओं को जोड़ने को दर्शाता है जिन्हें Node.js एप्लिकेशन चलाते समय तर्क के रूप में पारित किया जाता है:

उदाहरण 3: केवल पारित तर्कों को प्रिंट करने के लिए 'process.argv' प्रॉपर्टी को लागू करना

यह उदाहरण 'के लौटाए गए सरणी से पहले दो डिफ़ॉल्ट तत्वों को बाहर करता है प्रगति .argv' संपत्ति और सभी पारित तर्कों को प्रिंट करता है:

कॉन्स्ट बहस = प्रक्रिया। argv . टुकड़ा ( 2 ) ;
तर्क. प्रत्येक के लिए ( ( कीमत , अनुक्रमणिका ) => {
सांत्वना देना। लकड़ी का लट्ठा ( अनुक्रमणिका , कीमत ) ;
} ) ;

कोड की उपरोक्त पंक्तियों की व्याख्या इस प्रकार है:

  • सबसे पहले, ' बहस 'वेरिएबल' लागू होता है प्रक्रिया .argv' संपत्ति के साथ ' टुकड़ा ()'' लौटाए गए सरणी से पहले दो तत्वों को बाहर करने की विधि।
  • अगला, ' प्रत्येक के लिए ()'' विधि '' के साथ एक एरो फ़ंक्शन पास करती है कीमत ' और ' अनुक्रमणिका ” क्रमशः इसके पहले और दूसरे तर्क के रूप में। यह सभी ऐरे तत्वों को आउटपुट स्क्रीन पर एक-एक करके प्रदर्शित करेगा।
  • अंत में, ' सांत्वना देना .log()'' विधि '' का मान प्रदर्शित करती है अनुक्रमणिका ', और ' कीमत 'पैरामीटर।

उत्पादन

निष्पादित करें ' अनुक्रमणिका .js' फ़ाइल बनाएं और नीचे दिए गए आदेश के साथ स्ट्रिंग तर्क भी पास करें:

नोड सूचकांक. जे एस Linuxhint में आपका स्वागत है

अब, नीचे दिया गया आउटपुट केवल पारित तर्कों को उनकी अनुक्रमणिका के साथ दिखाता है:

यह सब कमांड लाइन से तर्क पारित करने के बारे में है।

निष्कर्ष

Node.js 'की पेशकश करता है प्रक्रिया कमांड लाइन से उपयोगकर्ता द्वारा तर्क पारित करने के लिए .argv” संपत्ति। यह संपत्ति एक सरणी प्रदान करती है जिसमें निष्पादन योग्य और '. जे एस 'फ़ाइल पथ' पर 0 ' और यह ' 1st 'सूचकांक, और पारित तर्क' 2 ' और ' 3 'सूचकांक। यह प्रॉपर्टी उपयोगकर्ताओं को कमांड लाइन से तर्क के रूप में स्ट्रिंग और संख्यात्मक मान दोनों को पारित करने की अनुमति देती है। इस पोस्ट में Node.js में कमांड लाइन से तर्क पारित करने के सभी संभावित पहलुओं को व्यावहारिक रूप से समझाया गया है।