nvm常用命令行操作

nvm(Node Version Manager)是管理 Node.js 版本的工具,以下是常用命令行操作,涵盖安装、版本管理、切换等核心功能:

一、安装与验证

  1. 安装 nvm (需先卸载全局 Node.js)

    • Windows:推荐使用 nvm-windows(下载 nvm-setup.exe 安装)

    • Mac/Linux:

      bash 复制代码
      curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
      # 或用 wget
      wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
  2. 验证安装成功

    bash 复制代码
    nvm --version  # 显示版本号即成功

二、核心版本管理命令

  1. 查看可安装的 Node.js 版本

    bash 复制代码
    nvm ls-remote  # 列出所有可安装的版本(带 LTS 标记的是长期支持版)
    nvm ls-remote --lts  # 只显示 LTS 版本(推荐生产环境使用)
  2. 安装指定版本

    bash 复制代码
    nvm install 18.18.0  # 安装具体版本(如 18.18.0)
    nvm install lts/hydrogen  # 安装最新的 LTS 版本(如 hydrogen 是 Node.js 18 的代号)
    nvm install node  # 安装最新的稳定版
  3. 查看已安装的版本

    bash 复制代码
    nvm ls  # 列出所有已安装版本(带 `*` 的是当前使用的版本)
    nvm current  # 显示当前激活的版本
  4. 切换使用的版本

    perl 复制代码
    nvm use 18.18.0  # 切换到指定版本(需先安装)
    nvm use lts  # 切换到最新的 LTS 版本
  5. 设置默认版本 (重启终端后仍生效)

    csharp 复制代码
    nvm alias default 18.18.0  # 将 18.18.0 设为默认版本

三、其他常用命令

  1. 卸载指定版本

    bash 复制代码
    nvm uninstall 16.20.2  # 卸载已安装的版本
  2. 临时禁用 nvm

    bash 复制代码
    nvm deactivate  # 临时使用系统全局安装的 Node.js(如果有)
  3. 查看 Node.js 版本对应的 npm 版本

    perl 复制代码
    nvm use 18.18.0
    npm --version  # 显示当前 Node 版本对应的 npm 版本
  4. 为不同项目指定 Node 版本
    在项目根目录创建 .nvmrc 文件,写入版本号(如 18.18.0),执行:

perl 复制代码
   nvm use  # 会自动读取 .nvmrc 并切换到对应版本
   ```
### 四、常见问题解决
-   **切换版本后命令失效**:重启终端或执行 `source ~/.bashrc`(Mac/Linux)刷新配置。
-   **权限问题**:Mac/Linux 下避免使用 `sudo nvm`,可能导致权限错误。
-   **Windows 下无法切换版本**:确保安装路径无空格和特殊字符,且以管理员身份运行终端。
通过这些命令,可以灵活管理多个 Node.js 版本,适配不同项目的依赖需求。
相关推荐
C澒7 分钟前
前端整洁架构(Clean Architecture)实战解析:从理论到 Todo 项目落地
前端·架构·系统架构·前端框架
C澒13 分钟前
Remesh 框架详解:基于 CQRS 的前端领域驱动设计方案
前端·架构·前端框架·状态模式
Charlie_lll16 分钟前
学习Three.js–雪花
前端·three.js
onebyte8bits33 分钟前
前端国际化(i18n)体系设计与工程化落地
前端·国际化·i18n·工程化
C澒42 分钟前
前端分层架构实战:DDD 与 Clean Architecture 在大型业务系统中的落地路径与项目实践
前端·架构·系统架构·前端框架
BestSongC1 小时前
行人摔倒检测系统 - 前端文档(1)
前端·人工智能·目标检测
0思必得01 小时前
[Web自动化] Selenium处理滚动条
前端·爬虫·python·selenium·自动化
Misnice1 小时前
Webpack、Vite、Rsbuild区别
前端·webpack·node.js
青茶3601 小时前
php怎么实现订单接口状态轮询(二)
前端·php·接口
大橙子额2 小时前
【解决报错】Cannot assign to read only property ‘exports‘ of object ‘#<Object>‘
前端·javascript·vue.js