摘要
NVM(Node Version Manager),是一款Node.js的管理套件,可以透過NVM管理不同的Node.js版本,也可以隨時切換到其它版本。
安裝NVM
NVM官方建議直接使用cURL安裝或更新 nvm
,雖說在macOS環境下一般都建議使用Homebrew來安裝,但安裝完後會有許多坑,因此我們就照官方建議來做吧!
1
| curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash
|
結果如下:

上面指令會將 nvm
的repository複製到 ~/.nvm
,然後把source line加進你的 profile ( ~/.bash_profile
, ~/.zshrc
, ~/.profile
, or ~/.bashrc
),之中;以我的例子會寫到 ~/.zshrc
中,我們可以使用 vim
打開來看看:
1 2 3
| export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
|

完成以後,我們重新載入 ~/.zshrc
看看 nvm
這個指令能不能用,顯示如下圖就代表安裝完成啦!

NVM 指令
查看有哪些 Node.js 版本可以安裝:

也可以帶入參數篩選:

列出本機安裝的資訊,可以看到我們都還沒安裝:

安裝需要的 Node.js 版本
安裝 13.13.0
使用 13.13.0
這樣就會安裝並使用 13.13.0
的 Node.js。

設定預設Node.js版本
經過上面的設定後每次重新開啟Terminal,Node.js的設定還是會被重置,因此需要設定預設使用版本:
1
| nvm alias default 13.13.0
|

之後每次開啟都會使用 13.13.0
NVM 指令整理
nvm --version
:檢查 nvm
是否安裝成功,如果是會輸出版本號
nvm ls-remote
:查看目前可安裝版本
nvm ls-remote <version>
:篩選版本號
nvm install <version>
:安裝指定版本
nvm ls
:查看本機目前安裝的版本
nvm use <version>
:切換版本,但重啟Terminal會重置設定
nvm alias default <version>
:設定每次開啟Terminal使用的Node.js版本
nvm -h
:列出所有指令選項
移除透過cURL安裝的NVM
刪除相關目錄:
移除~/.zshrc
內的nvm
設定:
刪除以下內容:
1 2 3
| export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
|
重啟 terminal,查詢以下指令,應該都沒有東西了:
移除透過Homebrew安裝的NVM
一般來說Homebrew 的 node
套件會預設裝在 /usr/local/bin
,移除以下目錄:
1
| rm -rf /usr/local/bin/node
|
1
| rm -rf /usr/local/bin/npm
|
1
| rm -rf /usr/local/bin/node_modules
|
確認是否完整移除:
參考資料