आपको जावास्क्रिप्ट में CLI उपयोगिताओं की आवश्यकता क्यों है?
\n\nकल्पना करें: आप हर दिन मैन्युअल रूप से रिपोर्ट वाले फ़ोल्डरों का नाम बदलते हैं, JSON को CSV में बदलते हैं या फ़ाइलों के डुप्लिकेट ढूंढते हैं। क्या होगा यदि आप एक छोटा प्रोग्राम लिखें जो टर्मिनल में एक कमांड से यह सब एक सेकंड में कर दे? इसी के लिए जावास्क्रिप्ट में CLI उपयोगिताओं की आवश्यकता होती है।
\n\nपूर्ण वेब एप्लिकेशन के विपरीत, CLI (कमांड लाइन इंटरफ़ेस) हल्के, तेज़ और बहुत सुविधाजनक उपकरण हैं। उन्हें ब्राउज़र की आवश्यकता नहीं होती, वे किसी भी प्लेटफ़ॉर्म पर काम करते हैं और आसानी से CI/CD स्क्रिप्ट में एकीकृत हो जाते हैं। PythonLib पर हम अक्सर ऑटोमेशन पर चर्चा करते हैं, और आज मैं दिखाऊंगा कि कैसे अपनी पहली Node.js पर CLI उपयोगिता शुरू से बनाएँ। आपको आश्चर्य होगा कि यह कितना आसान है!
\n\nइस लेख में हम पूरी यात्रा तय करेंगे: प्रोजेक्ट सेटअप से लेकर npm में तैयार पैकेज प्रकाशित करने तक। आपको केवल सिद्धांत नहीं, बल्कि काम करने वाला कोड मिलेगा जिसे आप तुरंत अपने कार्यों के अनुसार अनुकूलित कर सकते हैं।
\n\nCLI उपयोगिता क्या है और जावास्क्रिप्ट क्यों?
\n\nCLI उपयोगिता एक प्रोग्राम है जो कमांड लाइन से चलाया जाता है। आप लिखते हैं my-tool --input file.txt — और यह आवश्यक कार्य करता है। जावास्क्रिप्ट इसके लिए आदर्श है, क्योंकि:
- \n
- Node.js हर सर्वर और लगभग हर डेवलपर के पीसी पर स्थापित होता है। \n
- फ़ाइलों, नेटवर्क, डेटा प्रारूपों के साथ काम करने के लिए तैयार मॉड्यूल (npm) की भारी संख्या उपलब्ध है। \n
- लिखने में सरलता: संकलन की आवश्यकता नहीं, एक फ़ाइल पर्याप्त है। \n
- क्रॉस-प्लेटफ़ॉर्म: आपका उपकरण Windows, macOS और Linux पर काम करेगा। \n
भले ही आप Node.js में नए हों, आप इसे कर सकते हैं। हम सबसे सरल चीज़ से शुरू करेंगे — एक स्क्रिप्ट जो अभिवादन प्रदर्शित करती है।
\n\nचरण 1: CLI उपयोगिता के लिए प्रोजेक्ट सेटअप
\n\nअपने प्रोजेक्ट के लिए एक फ़ोल्डर बनाएँ और npm को इनिशियलाइज़ करें:
\n\nmkdir my-first-cli\ncd my-first-cli\nnpm init -y\n\nअब package.json खोलें। यह आपकी भविष्य की जावास्क्रिप्ट में CLI उपयोगिता का मुख्य कॉन्फ़िग है। इसमें "bin" फ़ील्ड जोड़ें:
{\n "name": "my-first-cli",\n "version": "1.0.0",\n "description": "मेरी पहली CLI उपयोगिता",\n "bin": {\n "greet": "./index.js"\n },\n "license": "MIT"\n}\n\n"bin" फ़ील्ड जादू है। यह Node.js को बताता है: «जब उपयोगकर्ता greet कमांड दर्ज करे, तो index.js फ़ाइल चलाएँ»। ध्यान दें: कमांड का नाम (greet) कोई भी हो सकता है।
अब पहली पंक्ति — शेबैंग (shebang) के साथ index.js बनाएँ। CLI के लिए यह अनिवार्य है:
#!/usr/bin/env node\n\nconsole.log('नमस्ते दुनिया! मैं तुम्हारी पहली CLI उपयोगिता हूँ!');\n\nशेबैंग #!/usr/bin/env node सिस्टम को बताता है कि स्क्रिप्ट को Node.js का उपयोग करके निष्पादित किया जाना चाहिए। इसके बिना कमांड काम नहीं करेगी।
चरण 2: उपयोगिता को निष्पादन योग्य बनाएँ और परीक्षण करें
\n\nअपनी जावास्क्रिप्ट में CLI उपयोगिता को स्थानीय रूप से चलाने के लिए, यह कमांड निष्पादित करें:
\n\nnpm link\n\nयह कमांड आपके पैकेज के लिए एक वैश्विक लिंक बनाता है। अब किसी भी टर्मिनल में लिख सकते हैं:
\n\ngreet\n\nऔर आप देखेंगे: नमस्ते दुनिया! मैं तुम्हारी पहली CLI उपयोगिता हूँ! बधाई हो, आपने अभी-अभी अपनी पहली उपयोगिता बनाई है!
चरण 3: कमांड लाइन आर्गुमेंट पार्सिंग
\n\nसिर्फ टेक्स्ट प्रदर्शित करना उबाऊ है। असली CLI उपयोगिताएँ आर्गुमेंट स्वीकार करती हैं। आइए उन्हें संसाधित करना सीखें। Node.js में एक अंतर्निहित ऐरे process.argv है, लेकिन गंभीर प्रोजेक्ट के लिए commander या yargs मॉड्यूल का उपयोग करना बेहतर है।
commander स्थापित करें:
npm install commander\n\nअब index.js को फिर से लिखें:
#!/usr/bin/env node\n\nconst { Command } = require('commander');\nconst program = new Command();\n\nprogram\n .name