nodejs
macOSSierra

node.jsをアンインストールする

node.jsをアンインストールしようとしてつまづいたので、備忘録として。

何をやってしまったか

  • パッケージマネージャ(.pkg)でnode.jsをサクッとインストール
  • 別のソフトウェアでnode.jsの最新版を使用しろ!と言われ、n latestコマンドを実行→開発途中のnode8.11へとアップグレードされる
  • Native Scriptを使おうとするとnode6以上で!と言われる(node8.11だと怒られた)
  • n 6.2 install を実行しても何も起きない(node5が規定のまま)
  • …さて、ここからどうしよう。

ネット上で掲載されている方法

http://umekov.hatenablog.com/entry/2016/12/03/000001 を参考に作業すると、下記のようなコマンドに遭遇しますが、現在ではこの方法でnode.jsは削除できませんでした。
(npmの削除は「npm uninstall -g npm」でしっかりアンインストールできました)
shell-session
$ lsbom -f -l -s -pf /var/db/receipts/org.nodejs.pkg.bom | while read i; do sudo rm /usr/local/${i}; done
$ sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*

でも、これを実行しても「ファイルがないよ」と怒られてしまった。

こういう時は大人しくpathを見てみる

パッケージマネージャでインストールしていると、一番最後の画面に「$PATHにnode足しといたよ、よろしくね!」ということが英語で書いてある。
つまり、PATHを見ればどこにnode.jsのファイルがあるかがわかる、ということです。
1. まずは以下のコマンドを実行する
shell-session
echo $PATH

を実行したら、「node」と書いてあるものを探してください(PATHの通っているフォルダは区切りで表記されています)
2. 見つけたら該当のフォルダへ「cd」コマンドで遷移→「cd ../」コマンドで一つ上のディレクトリに移動します。
shell-session
cd (見つけたディレクトリ)
cd ../

3. 「rm」コマンドを「sudo」で実行します(PCの管理者パスワードを要求されます)
4. 最後にPATHを書き換えます。一旦「echo $PATH」の実行結果をメモ帳に貼り付け、先ほど削除したディレクトリの情報を削除してください。
shell-session
vi ~/.bash_profile

5. 削除が完了したら、全てのPATHが通っているディレクトリが「:」で繋がっていることを確認して下さい。確認が完了したらその結果をvim上のPATHで始まるところにコピぺして、保存してください。
shell-session
PATH=(先ほどコピーしたものをそのまま貼り付ける)

終わったら下記コマンドを実行して以下のものが出てくることを確認したら完了です!
shell-session
source ~/.bash_profile
-bash: node: command not found

次からは

nodebrewやnvmパッケージマネージャを使ってインストールしましょう!
- nvm(Node.jsパッケージマネージャ) https://github.com/creationix/nvm
- nodebrew https://qiita.com/ebisennet/items/15c3c9fdb04e66db6323