nvm をインストールしたのに nvm コマンドが認識されない
nvm のインストーラを叩いた後に `nvm: command not found` になるのは、`~/.bashrc` や `~/.zshrc` への source 行追記が反映されていない/別シェルを使っている/Windows 用 nvm-windows のパス未反映が原因。
#nvm#shell#install#profile
公開:
要約
nvm install した直後の同じターミナルで nvm: command not found が出るのは、シェル設定ファイルの再読み込みが行われていないだけのことが多いです。
新しいターミナルを開くか source ~/.zshrc(bash なら ~/.bashrc)を叩けば認識されます。
それでも出ない場合は設定ファイルの追記漏れを疑います。
source ~/.zshrc # zsh
source ~/.bashrc # bashよくある原因
- シェル再起動を忘れている: nvm はインストール時に「現在のセッションを再起動するか source してください」と表示しますが、見落として同じターミナルで叩くと当然認識されません。
- zsh ユーザだが
~/.bashrcしか編集されなかった: 古いドキュメントに従うと~/.bashrcだけ追記されることがある。
zsh は~/.zshrcを読みます。 - Windows の nvm-windows でパスが反映されない: インストーラはシステム環境変数を更新しますが、起動中のターミナルには反映されません。
ターミナルを全て閉じて再度開く必要があります。 - macOS で
~/.zprofileにしか入っていない: ログインシェルでしか source されないため、IDE のターミナル(非ログインシェル)でcommand not foundになる。
解決策
1. シェル設定の確認(Unix 系)
公式 README のスニペットが ~/.zshrc 等に追記されているか確認します。
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"無ければ手動で追記し、source ~/.zshrc で読み直します。
2. Windows: nvm-windows
公式インストーラを実行したら、開いている すべての ターミナルを閉じてから新規に起動します。
PowerShell 7 / Windows Terminal / Git Bash で別個に確認するのが確実です。
3. zsh の設定ファイルを統一
~/.zprofile と ~/.zshrc のどちらに書くか迷ったら ~/.zshrc を選ぶと IDE 内ターミナル等でも動きます。