NVS:一款简洁高效的 Node.js 版本管理工具

简介: 本文由前端开发者喵喵侠分享,介绍轻量级Node.js版本管理工具nvs的使用方法。涵盖Windows安装、常用命令(如add、link、use、ls、rm)、全局与局部版本切换技巧,并详细说明macOS下卸载nvs的完整步骤。相比nvm,nvs在Windows上体验更稳定,操作简洁高效,适合多项目开发场景。

前言

你好,我是喵喵侠,是一名前端开发。

有段时间我经常需要切换 Node 版本,以适应不同的前端项目。nvs 是一款很不错的 Node.js 版本管理器,可以让我在多个版本来回切换,而且命令很简洁,跟 pnpm 用法有点类似,很方便。今天就来简单介绍一下它是怎么用的。

安装 NVS

Windows 安装

Windows 用户安装非常简单,直接去 GitHub 的 release 页面找到 .msi 安装包,下载安装即可。

Releases · jasongin/nvs

NVS 常见命令

安装完成后,你可以输入 nvs -h,获取全部命令。

➜ nvs -h
NVS (Node Version Switcher) usage
nvs help <command>             Get detailed help for a command
nvs install                    Initialize your profile for using NVS
nvs --version                  Display the NVS tool version
nvs menu                       Launch an interactive menu
nvs add <version>              Download and extract a node version
nvs rm <version>               Remove a node version
nvs migrate <fromver> [tover]  Migrate global modules
nvs upgrade [fromver]          Upgrade to latest patch of major version
nvs use [version]              Use a node version in the current shell
nvs auto [on/off]              Automatically switch based on cwd
nvs run <ver> <js> [args...]   Run a script using a node version
nvs exec <ver> <exe> [args...] Run an executable using a node version
nvs which [version]            Show the path to a node version binary
nvs ls [filter]                List local node versions
nvs ls-remote [filter]         List node versions available to download
nvs outdated                   List local node versions and available updates
nvs link [version]             Link a version as the default
nvs unlink [version]           Remove links to a default version
nvs alias [name] [value]       Set or recall aliases for versions
nvs remote [name] [uri]        Set or recall download base URIs

上面英文看不懂没关系,有些用不着,记得常用的就行。我平时干活最常用的有这几个命令:

下载并安装 Node 版本 (nvs add)

比如我会这样用,安装最新的 Node 24:

nvs add 24

切换全局默认版本 (nvs link)

安装好后,我希望全局都默认使用 v24 版本:

nvs link 24

局部/临时切换版本 (nvs use)

假设局部文件夹需要使用 Node 14,输入以下命令。注意这只是临时的,下次进来或者新开窗口,它会自动恢复成我之前设置的全局版本(Node 24):

nvs use 14

查看已安装版本 (nvs ls)

查看我的所有已经安装 Node.js 版本:

nvs ls

卸载 Node 版本 (nvs rm)

卸载 Node 指定版本,比方说 16:

nvs rm 16

卸载 NVS

如果你不想用了,或者有更好的替代品,卸载起来也很容易。

Windows 卸载

如果你和我一样用的是 .msi 安装的,那么简单,去控制面板,程序与功能,里面找到 nvs 卸载即可。

macOS 卸载

如果你是 macOS,删除方式很简单,你可以直接找到 nvs 的安装目录删除即可。不过用 which nvs 是找不到 nvs 路径的,这里我有个巧办法。

第一步:查找安装路径

你可以先使用 nvs ls 命令,查看你当前安装了哪些 Node 版本,比方说我的是这样的:

➜ nvs ls
>#node/24.4.1/x64
  node/22.17.0/x64 (Jod)
  node/20.14.0/x64 (Iron)
  node/18.20.2/x64 (Hydrogen)
  node/18.19.1/x64 (Hydrogen)
  node/18.15.0/x64 (Hydrogen)
  node/16.15.0/x64 (Gallium)
  node/14.17.0/x64 (Fermium)
  node/12.19.0/x64 (Erbium)

然后你可以用命令 nvs which 配合任意一个版本号(比如 14),找到 Node 的安装路径:

nvs which 14

终端会输出:

/Users/cooper/.nvs/node/14.17.0/x64/bin/node

通过这个路径,你就发现了 nvs 的老家在 /Users/cooper/.nvs

第二步:执行删除

接着就执行命令把这个文件夹整个删掉就好了:

rm -rf /Users/cooper/.nvs

nvs 有点好,就是 Node 和命令都在一个文件夹里面,一删就全删了。

第三步:清理配置

软件是删掉了,但是配置最好也清一下。比方说我的 zsh 配置文件就有这个 nvs 配置,存在就删掉。

open ~/.zshrc

.bash_profile.bashrc 也可以看看,没有就不用管。

总结

总的来说,nvs 是一款非常轻量且逻辑清晰的 Node 版本管理工具。虽然它不像 nvm 那么出名,但在 Windows 上的稳定性和跨平台的一致性体验上,我觉得它更胜一筹。如果你也受够了版本切换的各种报错,不妨试试它。

目录
相关文章
|
5月前
|
JavaScript Linux iOS开发
使用 nvs 工具来切换 node 版本
nvs是一款跨平台Node版本管理工具,支持Windows、macOS和Linux,可轻松切换不同项目的Node版本。本文介绍其安装方法、常用命令(如添加、切换、默认版本设置)及实用技巧,助力多项目高效开发。
1478 0
使用 nvs 工具来切换 node 版本
|
消息中间件 存储 Kafka
RabbitMQ、RocketMQ和Kafka全面对决,谁是最佳选择?
1、应用场景 1.RabbitMQ: 适用于易用性和灵活性要求较高的场景 异步任务处理:RabbitMQ提供可靠的消息传递机制,适用于处理异步任务,例如将耗时的任务放入消息队列中,然后由消费者异步处理,提高系统的响应速度和可伸缩性。 解耦系统组件:通过使用RabbitMQ作为消息中间件,不同的系统组件可以通过消息进行解耦,实现松耦合的架构,提高系统的可维护性和灵活性。 事件驱动架构:RabbitMQ的发布-订阅模式可以用于构建事件驱动架构,将系统中的事件作为消息发布到相应的主题,不同的消费者可以订阅感兴趣的主题进行相应的处理。
1961 2
|
3月前
|
人工智能 Linux API
小白都能看懂的“养龙虾”教程:OpenClaw保姆级部署(阿里云+Windows/Mac/Linux)+ 免费大模型接入+全场景落地指南
2026年,AI智能体领域最火的词非“养龙虾”莫属。这里的“龙虾”,不是餐桌上的海鲜,而是开源AI智能体OpenClaw的中文昵称——因图标形似小龙虾得名,更因“能动手、真干活”的核心能力,成为个人与企业追捧的“专属数字员工”。它彻底打破了传统AI“只说不做”的局限,不再是单纯的聊天工具,而是能直接操控电脑、自主完成任务的自动化引擎,核心价值可概括为“语言指令→AI自主规划→自动操作→完成反馈”的全闭环。
3904 3
|
4月前
|
人工智能 运维 架构师
老金开源Agent Teams编排Skill:一句话自动组队,手动挡时代结束了
加我进AI讨论学习群,公众号右下角“联系方式” 文末有老金的 **开源知识库地址·全免费** --- 术语说明:"Swarm/蜂群"是多Agent协作的通用说法(OpenAI有官方项目叫Swarm),但 Claude Code的官方概念是Agent Teams。本文使用官方术语Agent Teams,保留"蜂群"作为通俗说明。 先说老金我昨儿开源了[老金开源10万字Claude Code中文
5237 10
老金开源Agent Teams编排Skill:一句话自动组队,手动挡时代结束了
|
5月前
|
人工智能 自然语言处理 API
n8n:流程自动化、智能化利器
流程自动化助你在重复的业务流程中节省时间,可通过自然语言直接创建工作流啦。
1391 9
n8n:流程自动化、智能化利器
|
5月前
|
人工智能 小程序 JavaScript
uni-app微信小程序相机组件二次拍照白屏问题的排查与解决
本文分享了在uni-app开发微信小程序时,因状态管理不当导致拍照后图片不显示的bug排查过程。问题根源在于删除照片时将变量设为“#”(truthy值),导致条件渲染逻辑错误。通过彻底清空相关状态并遵循最佳实践,最终解决问题。
254 2