質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
npm

npmは、Node Packaged Modulesの略。Node.jsのライブラリ・パッケージを管理できるツールです。様々なモジュールを簡単にインストールでき、自分でモジュールを作成し公開する際にも使用できます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Q&A

解決済

1回答

5578閲覧

npmが認識されません。

kemokemo

総合スコア7

npm

npmは、Node Packaged Modulesの略。Node.jsのライブラリ・パッケージを管理できるツールです。様々なモジュールを簡単にインストールでき、自分でモジュールを作成し公開する際にも使用できます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

0グッド

1クリップ

投稿2018/01/15 01:44

Node.jsのv8.9.4を一度アンインストール後、再インストールしたのですが、バージョンを調べるとSSHとコマンドプロンプトで違うバージョンが表示され、SSHではnpmが認識されなくなってしまいました。

【経緯】
・無料学習サイトのドットインストール様でNode.jsの学習をしていて、推奨版のv8.9.4をインストールしたのですがSSHでバージョンを確認するとv0.10.48となってしまう
・いったんアンインストーラーを使用してNode.jsをアンインストールしたものの、SSH上ではまだv0.10.48が表示される
・/home/vagrant/nodejsディレクトリを削除、また、コマンドプロンプトで「npm uninstall npm -g」を実施
・その後インストーラーを使用してNode.jsのv8.9.4を再インストール。現在は以下の状況です。
コマンドプロンプト
node -v v8.9.4
npm -v v5.6.0

  ・SSH
node -v v0.10.48
npm -v -bash: npm:コマンドが見つかりません

また、初心者ながらにPATHを調べようとしたところ、以下が表示されました。
・コマンドプロンプト
where node  
C:\Program Files\nodejs\node.exe
C:\Program Files (x86)\Nodist\bin\node.exe
where npm
C:\Program Files\nodejs\npm
C:\Program Files\nodejs\npm.cmd
C:\Program Files (x86)\Nodist\bin\npm.cmd
C:\Program Files (x86)\Nodist\bin\npm.exe

  ・SSH
which node  /usr/bin/node
which npm /usr/bin/which: no npm in (/home/vagrant/.pyenv/plugins/pyenv-virtualenv/shims:/home/vagrant/.pyenv/shims:/home/vagrant/.pyenv/bin:/home/vagrant/.rbenv/shims:/home/vagrant/.rbenv/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/vagrant/bin)

Node.jsをアンインストールする前と同様にnpmを有効にしたい場合にはどのようにすればよろしいでしょうか?ご教授お願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

そもそものVagrantの使い方と意味を覚えましょう。

Vagrantは自分のWindowsマシンの中で、
仮想的なCPU、仮想的なメモリ、仮想的なハードディスク…を利用して、仮想的なマシンを立ち上げるものです。

その力は絶大で、MacやLinuxから仮想的なWindowsマシンを立ち上げて、Windowsでしか動作しないプログラムを動作させたり、逆にWindowsからLinuxマシンを立ち上げて、Webサーバ利用に便利なLinux専用のプログラムを動作することに使われます。
もちろん仮想的なCPUやメモリを利用するので、処理速度は遅くなりますけどね。


これが質問文の何処に関係するのかというと、
質問文内で「SSHでは」と表現しているのは仮想マシンのLinuxを指しているからです。
そして、Windows世界での操作と、仮想マシン世界でのファイルやプログラムのインストール状態は完全に別物です。

・推奨版のv8.9.4をインストールしたのですがSSHでバージョンを確認するとv0.10.48となってしまう

Windowsにv8.9.4を入れたんだね。
でもLinuxでは関係ないからv0.10.48になるのは当然でしょ。

・いったんアンインストーラーを使用してNode.jsをアンインストールしたものの、SSH上ではまだv0.10.48が表示される

WindowsのNode.jsをアンインストールしたんだね。
でもLinuxでは関係ないからv0.10.48のままなのは当然でしょ。

要するに、2つの世界は完全に別物なので混同しちゃいけませんよって話ですね。
他の経緯で語られている内容も全てWindowsと仮想マシンのLinuxの状態を混同している事が原因です。

Linuxマシンの世界を操作するのはSSHで接続した後のコマンドのみです。
不便かとは思いますが、Linux内でどういうコマンドを打ち込めばNode.jsかという視点で調べなおしてみてください。

投稿2018/01/15 04:00

編集2018/01/15 04:01
miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kemokemo

2018/01/15 05:09

ご回答ありがとうございます。そもそもの根本的なところから勘違いしていたのですね。 おっしゃる通り、Windows用のインストーラーでインストールしておりました。早速Linuxのインストール方法を調べてやり直したところ、無事推奨版のv8.9.4をインストールすることができ、npmも使えるようになりました。 おかげさまで学習を進めることができます。本当にありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問