😩
Node.jsバージョンアップの際に、zshでnコマンドが見つからなかった時の話
2020 年 12 月時点で zenn の Node.js 推奨バージョンが 13,14 とのことだったので、私の Node.js のバージョンを確認しました。
$ node -v
v12.16.3
バージョン 12 であったため、npm で n をインストールし、
$ npm install -g n
Node.js の安定版を確認しようとしたところ。
$ n --stable
zsh: command not found: n
インストールした n が見つからない。。。。
色々調べたところ、zsh の設定ファイルに n の PATH を追記していないことが判明しました。
下記の記事を参考に、PATH を追記しようとしましたが、
「そもそも n の PATH って何だ?」 というところでつまずきました。。。
そういえば n をインストールした際に PATH っぽいものが表示されているかもと思い、コマンドの履歴を確認したところ...
$ npm install -g n
....
/Users/**_/.npm-global/bin/n -> /Users/_**/.npm-global/lib/node_modules/n/bin/n
↑ を発見!!!こちらをもとに設定ファイルに PATH を設定します。
.zshrc
export PATH=$HOME/.npm-global/lib/node_modules/n/bin:$PATH
PATH を設定し、n が使えるか確認します。
$ n ls
find: /usr/local/n/vesions: No such file or directory
とりあえず、n が使えるようになりました。
安定版をインストールします。
$ n stabe
....
mkdir: /usr/local/n/vesions/node/14.15.1: Permission denied
Error: sudo required (or change ownership, or define N_PREFIX)
安定版をインストールしようとしたら sudo を求められたので、sudo をつけて安定版をインストールします。
sudo n stable
インストール後に Node.js のバージョンを確認します。
node -v
v14.15.1
初めて zsh の設定ファイルに PATH を追加しましたが、無事 Node.js のバージョンアップができました!!!
Discussion