文章总结: 本文介绍fnm作为替代nvm的Node.js版本管理工具,采用Rust编写具有跨平台优势。对比nvm在启动速度、跨平台支持和配置复杂度上的改进,详细说明安装命令和基本操作包括版本查看、安装卸载、环境切换及别名功能。作者基于实际使用体验推荐从nvm迁移到fnm。 综合评分: 73 文章分类: 其他
告别nvm!fnm:新一代极速Node版本管理工具全攻略
原创
一只岸上的鱼 一只岸上的鱼
一只岸上的鱼
2026年6月20日 09:10 江苏
在小说阅读器读本章
去阅读
告别nvm!fnm:新一代极速Node版本管理工具全攻略
缘起
对于工具,我一直是比较专情(aka:懒)的,关于 Node ,一直是使用 nvm 来管理不同版本的。
理由很简单:
- 这个工具我已经会用了
- 这个工具满足了我的需求
这种情况下,大部分时候我都不愿意去尝试其他的工具
直到有一天,我终于忍受不了将nvm ls-remote 敲成nvm list available 的时候,我知道我对他的感情已经尽了😴
简单解释
nvm并不原生支持windows,需要使用nvm-windows来支持windows,但是nvm-windows的指令和nvm的一致性存在差异,让我很郁闷,例如上面说的,查询可用版本的时候,nvm-windows 的指令是 nvm list available,而 nvm 的指令是 nvm ls-remote。
介绍fnm
fnm,全称 Fast Node Manager,是一款用 Rust 编写的 Node.js 版本管理工具
然后还有人专门把他和nvm做了比对:
| 问题 | nvm 的短板 | fnm 的破局之道 |
| — | — | — |
| 启动慢 | Shell 脚本执行,每次切换都像“加载动画” | Rust 编译为原生二进制,毫秒级响应 |
| 跨平台难 | Windows 需依赖 WSL,配置复杂 | 原生支持 macOS / Linux / Windows,无需折腾 |
| 配置繁琐 | 需手动配置 .bashrc/.zshrc,易出错 | 一键安装 + 自动注入,配置简单到“无感” |
1和3都是扯:谁频繁安装node,谁频繁切换node(一个新项目才切换一次),一台电脑才配置一次
然后2是我心动的,我有mac,大部分使用远程linux开发,但是我也是在放不下windows,他也许安全性性能都比不上mac和linux,但是他gui的响应性确实很习惯的,而且针对一些文档办公环境也更友好,所以我也很喜欢在windows下写代码。
安装
linux可以直接使用提供的安装脚本,windows使用winget:
# linux
curl -fsSL https://fnm.vercel.app/install | bash
#windows
winget install --id Schniz.fnm
使用
我对node办公管理工具的要求只有:安装卸载node、切换node环境
安装卸载node
# 查看可用版本
fnm list-remote
# 安装指定版本
fnm install v22.22.3
# 知道名字还可以不用查:安装最新lts版本
fnm install --lts
卸载
切换node环境
# 查看已安装版本
fnm list
# 切换指定版本
fnm use v22.22.3
fnm use v24.17.0
别名
这也是我常用的一个功能: 总有一些古董项目需要修复bug,版本要求也比较老,经常记不住,所以直接给他起一个项目的名字:
fnm list-remote|grep v16.20
fnm install v16.20.2
fnm alias v16.20.2 erp
fnm list
fnm use erp
小结
终于准备告别nvm,全面拥抱fnm了
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:一只岸上的鱼 一只岸上的鱼 一只岸上的鱼《告别nvm!fnm:新一代极速Node版本管理工具全攻略》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论