नोड: आदेश नहीं मिला


46

मुझे समझ नहीं आ रहा है कि nodeकमांड काम क्यों नहीं करेगा, जबकि nodejsकाम करता है:

$ node --version
zsh: command not found: node
$ nodejs --version
v0.10.15

मैंने कोशिश की apt-get install nodejs, लेकिन नवीनतम संस्करण पहले से ही स्थापित है।

और इसके अलावा:

$ npm
zsh: command not found: npm

मुझे लगा कि npmNodeJS> 0.10 में शामिल किया गया है?


हो सकता है कि यह पोस्ट आपकी समस्या को हल करे [Stackoverflow] [1] [१]: stackoverflow.com/questions/13593902/node-command-not-found
अहमद अल-बटाशी

@ अहमद-बटलशी इसकी मदद नहीं करती है, मैं पहले ही इसे पढ़ चुका हूं। NodeJS, स्थापित किया गया है nodejsपथ में है, लेकिन nodeऔर npmउपलब्ध नहीं हैं, मैं उन्हें कहीं भी अपने सिस्टम पर नहीं मिल रहा।
मैथ्यू नेपोली

2
मुझे पूरी तरह से यकीन नहीं है, लेकिन मुझे याद है कि nodeबाइनरी का नाम बदलने का कारण यह था क्योंकि इसे एक पैकेज node(एमेच्योर पैकेट रेडियो नोड प्रोग्राम) के साथ विरोध किया गया था ।
यजुंग

क्या आप सुनिश्चित हैं कि आप देख रहे हैं nodeऔर नहीं nodejs? nodeयह नहीं है कि आप क्या सोचते हैं।
ब्राह्मण

जवाबों:


43

nodeपैकेज NodeJS से संबंधित नहीं है। नोड केनोड स्थापित करें बारे में जानकारी के लिए यहां देखें :

एमेच्योर पैकेट रेडियो नोड कार्यक्रम (संक्रमणकालीन पैकेज)


आपको इसके बजाय nodejs नोडज स्थापित करेंपैकेज स्थापित करना चाहिए ।

sudo apt-get install nodejs

फिर nodejsकमांड के साथ इसका उपयोग करें ।

कारण nodeकाम नहीं करता है, क्योंकि संभव है कि nodeऊपर लिंक किए गए मूल पैकेज के साथ टकराव हो ।


यदि आप चाहें npm एनपीएम स्थापित करें, तो आपको वह भी स्थापित करना होगा।

sudo apt-get install npm

3
मैं nodeपैकेज के बारे में जानता था , हालाँकि मैं यह नहीं देखता कि कमांड पैकेज टूल पर किसी नाम पैकेज का कोई प्रभाव क्यों पड़ता है। उदाहरण के लिए, मैं स्थापित नहीं है php, लेकिन php5-cli। लेकिन उत्तर के लिए धन्यवाद, मैं अनिश्चित था अगर मैन्युअल रूप से स्थापित करने में npmकोई समस्या होगी, तो जाहिर तौर पर यह नहीं है।
मैथ्यू नेपोली

2
nodejs-legacyपैकेज को स्थापित करने से आप nodeया तो उपयोग कर सकते हैं nodejs
ग्रूवप्लेक्स

48

मैं सहमत हूं, यह एक मुद्दा है लेकिन मुझे नहीं पता कि ऐसा क्यों हो रहा है।

जोड़

पहली चीजें पहले, केवल बाइनरी nodeपॉइंटिंग से nodejsबाइनरी को एक प्रतीकात्मक लिंक बनाएं ।

ln -s /usr/bin/nodejs /usr/bin/node

समस्या

काफी कुछ गाइड जो मुझे Nodejs ( यहां और यहां ) स्थापित करने के लिए मिला है, सभी का परीक्षण करने के लिए समान कोड है कि क्या स्थापना सही ढंग से हुई है। तो अनिवार्य रूप से एक साधारण सर्वर बनाएं जैसे:

// hello_node.js
var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello Node.js\n');
}).listen(8124, "127.0.0.1");
console.log('Server running at http://127.0.0.1:8124/');

और फिर इसे निम्न के साथ नोडज में चलाएं:

node hello_node.js

और फिर जब मैं कुछ स्थापित करने के लिए npm का उपयोग करने की कोशिश कर रहा था, तो वह विफल हो रहा था और उसी node not foundसंदेश को रिपोर्ट कर रहा था ।


मेरे पास एक ही समस्या है, sudo apt-get install npm और उसके बाद @jlouzado recomendation को पूरा करें। अब अच्छी तरह से काम कर रहा है
user615274

5
मजेदार टिप: एक नोडज-लीगेसी पैकेज है जो "विरासत कोड" के साथ संगतता के लिए, समान रूप से सहानुभूति प्रदान करता है, जो अभी भी उस पर निर्भर करता है।
सिमोन

1
@ साइमन मुझे लगता है कि एक प्रतीकात्मक लिंक बनाने से बेहतर समाधान है।
नाली

तो अब मैं 3 पैकेजों की गिनती कर रहा हूँ अगर मुझे मूल रूप से Node.js. के साथ कुछ भी करना है तो मुझे स्थापित करना होगा मैं एक घंटे के लिए इस एक Node.js पुस्तकालय स्थापित करने की कोशिश कर रहा हूँ।
सूदो

मैं स्थापित करने में असमर्थ था asciicast2gifक्योंकि स्थापना के दौरान यह चलता है node install.jsऔर मुझे त्रुटि मिलती है sh: 1: node: not found। यह इसे ठीक करता है।
विनायक

26

जैसे @ minerz029 ने पहले ही कहा कि nodeपैकेज के साथ संघर्ष है । लेकिन अगर आपको अभी भी nodeकमांड की आवश्यकता है (क्योंकि एक स्क्रिप्ट केवल nodeउदाहरण के लिए उपयोग करता है ), nodejs-legacyपैकेज को स्थापित करने का सही तरीका है :

apt-get install nodejs-legacy

और अपने आप (विशेष रूप से नहीं में /usr/bin/) एक सिमिलिंक न बनाएं । यह nodeनोडज के लिए एक कमांड प्रदान करेगा ।


2
यह काम करता हैं। मुझे लगता है कि यह @ jlouzado के उत्तर से बेहतर है।
शॉन झी

जब तक आप अक्सर अपने ओएस इंस्टॉल के साथ "खरोंच से शुरू" करते हैं .... बिन में सहानुभूति का प्रबंधन करने के लिए बेहतर है। धन्यवाद!
माइक

2

इसे इस्तेमाल करे

curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -

sudo apt-get install -y nodejs

:)


2
आप नवीनतम संस्करण क्यों नहीं स्थापित कर रहे हैं?:curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
कारेल

setup_6.x स्थिर है
MUHASIN BABU

Node.js संस्करण 8 के लिए LTS नीति यह है कि यह अब LTS लंबित है, यह अक्टूबर, 2017 में कुछ महीनों में LTS होना शुरू हो जाता है, यह अप्रैल, 2019 में रखरखाव की अवधि शुरू करता है, और दिसंबर, 2019 में रखरखाव समाप्त करता है। अधिक जानकारी के लिए इस उत्तर में तालिका देखें: askubuntu.com/questions/626383/…
कारेल

1

आपको मैन्युअल रूप से इंस्टॉल करने की आवश्यकता हो सकती है

sudo apt-get install npm

1
मैं हर जगह पढ़ता हूं कि मुझे मैन्युअल रूप से npm को स्थापित नहीं करना चाहिए क्योंकि यह> v0.10 में शामिल था: / मैं थोड़ा खो गया हूं
Matthieu Napoli

0

nvmउपयोगकर्ताओं के लिए एक त्वरित सुधार । मैं का उपयोग करें nvm(नोड संस्करण प्रबंधक) और मुझे इस्तेमाल करने के लिए npmआदेश मैं हमेशा से पहले जारी करना होगा npmइस आदेश nvm use 0.x(की जगह 0.xके साथ 0.11या 0.10उदाहरण के लिए संस्करण आप उपयोग करना चाहते हैं,)।


0

जैसा कि minerz029 ने पहले ही उल्लेख किया है , nodejsपैकेज के कुछ संस्करण nodeउस नाम का उपयोग करने से पहले किसी अन्य पैकेज के कारण बाइनरी प्रदान नहीं करेंगे । यह समाधान नोड की अपनी वेबसाइट पर किताइन चरणों का पालन करने जैसा सरल है:

पैकेज मैनेजर के माध्यम से Node.js इंस्टॉल करना | डेबियन और उबंटू आधारित लिनक्स वितरण

फिलहाल, वे चरण हैं:

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs

लेकिन यह सुनिश्चित करने के लिए कि आप नवीनतम संस्करण का उपयोग कर रहे हैं, स्रोत लिंक की जांच करना सबसे अच्छा होगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.