Node.js 版本管理工具 n 使用指南

2023-11-16

Node.js 版本更新很快,目前 node v20.x 已经发布,我们在使用时避免不了会需要切换不同的 Node.js 的版本来使用不同版本的特性。
所以就出现了像 windows 上的 nvm,MacOS 上的 n 工具,本文就介绍一下如何使用 n 管理 Node.js 的版本。

Node.js && n

安装

# 使用 npm / yarn
npm i -g n
yarn global add n
# 使用 brew
brew install n

命令详解

版本查看

# 查看 n 版本
n --version/-V
# 查看 node 本地当前使用版本
node --version/-v
# 查看 node 远程版本
n lsr/ls-remote [--all] // 默认20个,--all展示所有
# 查看 n 管理的 node 版本
n [ls/list/--all]

安装 Node.js

# 安装指定版本
n [install/i] <version>
# 安装稳定版本
n lts/stable
# 安装最新版本
n latest/current
# 安装文件中对应 node 版本 [.n-node-version, .node-version, .nvmrc, or package.json]
n auto
# 安装 package.json 对应 node 版本
n engine
# 通过发布流的代码名 例如[ boron, carbon]
n boron/carbon

切换 Node.js 版本

  1. 查看 n 管理的 Node.js 版本: n ls/list/--all
  2. 通过上下方向键选择想要切换的版本后点击 Enter 键;
  3. 如果没有,可以通过: n [install/i] <version>,安装成功后会自动切到该版本。

查看 Node.js 版本安装路径

n which/bin <version>

删除 Node.js 版本

# 删除当前版本
n uninstall
# 删除指定版本
n rm/- <version>
# 删除除当前版本之外的所有版本
n prune

执行命令

# 使用指定 node 版本
n run/use/as <version> [args...]
# 先下载节点和npm,使用修改过的PATH执行命令
n exec <vers> <cmd> [args...]

查看帮助

n help/-h/--help

args 说明

  • -h, --help:查看帮助信息;
  • -p, --preserve:在 Node.js 的安装过程中保留 npmnpx
  • -q, --quiet:禁用 curl 输出,禁用日志消息处理“auto”和“engine”标签;
  • -d, --download:仅下载;
  • -a, --arch:覆盖系统架构;
  • --allls-remote 默认展示 20 条,--all 展示全部;
  • --insecure:关闭https请求的证书检查(可能需要在代理服务器后面);
  • --use-xz/--no-use-xz:覆盖自动检测 xz 支持和启用/禁用使用xz压缩节点下载。

欢迎访问:天问博客

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Node.js 版本管理工具 n 使用指南 的相关文章

  • Node + Express .post 路由抛出错误。预期回调,获得对象

    我目前正在开发一个使用 Express Node 的应用程序 我最近添加了一个新的 post路线到app js文件 使用以下语法 app post api posts saveComment posts saveComment posts上
  • Node.js 有水豚吗?

    有谁知道 Node js 是否有类似 capybara 的东西 怎么样Zombie http zombie labnotes org 僵尸 js 使用 Node js 进行极其快速的无头全栈测试 The Bite 如果你要编写一个速度极快的
  • 节点检查器显示对象“无属性”

    我在调试场景中相当陌生 尤其是节点检查器 安装节点检查器后 我使用 debug 参数启动了简单的节点应用程序 并且能够在 localhost 8080 debug port 5858 处看到调试视图 当我让应用程序在此断点处停止时 rout
  • 使用admin sdk在云函数中执行firestore集合组查询?

    firestore collectionGroup 方法在云函数中与 firebase admin sdk 一起使用时出现错误 是否可以在云函数中对 firestore 进行集合组查询 这是我尝试使用的 firestore 查询方法 htt
  • 如何模拟“焦点”和“打字”事件

    尝试模拟 onfocus 和打字事件 但它不起作用 Sub Login MyLogin MyPass Dim IEapp As InternetExplorer Dim IeDoc As Object Dim ieTable As Obje
  • Nodejs - 处理和发送多部分请求,

    我的应用程序在 Nodejs 服务器上运行 Node Js 还充当来自应用程序的请求的中间件 代理 因此 从浏览器开始 所有 REST 调用都会转到 NodeJs 然后转到 Java API 我发现处理多部分表单数据的请求时出现问题 我在
  • 语法错误:elasticdump 中的exports.runInThisContext (vm.js:53:16) 处出现意外标记 {

    我试图使用elasticdump 将elasticsearch 数据从一台服务器移动到另一台服务器 当我给予 elasticdump input http 192 168 0 122 9200 my index output http lo
  • Nodejs 一个接一个地运行异步函数

    我是 JS nodejs 的新手 所以如果我不能提出切中要害的问题 请原谅我 所以基本上 如果我有两个异步函数 async function init async function main 如何确保在 init 完成其异步请求后调用 ma
  • Node.js 检测两个猫鼬查找何时完成

    我正在尝试使用自动完成功能初始化两个输入library https www devbridge com sourcery components jquery autocomplete 当我加载页面时 我将触发 Ajax 来初始化两个输入文本
  • S3.getSignedUrl 接受多种内容类型

    我正在使用react s3 uploader节点包 它接受一个signingUrl用于获取用于将对象存储到 S3 中的signedUrl 目前 我已经配置了一个 lambda 函数 带有 API 网关端点 来生成此signedUrl 经过一
  • Mongoose 独特的验证不起作用。保存重复条目

    我正在开发一个 NodeJS 应用程序 其中express是框架 MongoDB是数据库 我正在使用猫鼬插件 我有一个父母模型 我已经添加了独特 真实到场 mobile 但是每当我添加相同的手机号码时 唯一性验证就会失败 除了保存重复的文档
  • 使用 Jade 评估自定义 javascript 方法 (CircularJSON)

    我想通过 Jade 将一个对象解析为客户端 JavaScript 通常这会起作用 script var object JSON parse JSON stringify object but my object is circular ht
  • 我想在“npm install”上下载一些资源,大概使用“预发布”脚本

    具体来说 我想在运行 npm install 时下载 angular min js 从我读到的here https npmjs org doc scripts html做这些事情的地方是在预发布脚本 它还提到我不需要依赖在系统上安装 wge
  • NodeJS:调用 global.gc() 不会将内存减少到最低限度?

    为了调查内存泄漏 我设置了一条触发的路线global gc 在每个POST gc app post gc function req res global gc 但是 我注意到 如果我发送垃圾邮件此请求 每次都会越来越多地减少内存使用量 不应
  • 如何在 VSCode 调试器中执行异步函数? [复制]

    这个问题在这里已经有答案了 如果我在一些 javascript 代码中放入 VSCode 调试器并使用 wait 调用异步函数 它只会返回一个承诺 如何解决调试器中的承诺 以便我可以看到结果是什么 例如 如果我定义一个像这样的函数 cons
  • Apache + Symfony2 + HTTPS + Node.js + Socket.io:socket.emit 未触发

    我花了几个小时来解决这个问题 但毫无结果 编辑 找到解决方案 参见我的答案 项目背景 我正在构建一个项目Symfony2 这需要一个用于上传大文件的模块 我选择了Node js and Socket IO 我必须从头开始学习 所以我可能会错
  • NodeJS Express Windows 最大连接数设置

    在哪里设置nodejs的最大连接数 用于使用express get 在 Windows 10 中 与linux中的最大文件 描述符 设置有关吗 有该设置的 Windows 版本吗 最好是在nodejs中进行设置 以便在迁移到unix时兼容
  • 使用 Android 发送 HTTP Post 请求

    我一直在尝试从 SO 和其他网站上的大量示例中学习 但我无法弄清楚为什么我编写的示例不起作用 我正在构建一个小型概念验证应用程序 它可以识别语音并将其 文本 作为 POST 请求发送到 node js 服务器 我已确认语音识别有效 并且服务
  • 在打字稿中导入 json

    我是 typescript 的新手 在我的项目中 我们使用 typescript2 在我的要求之一中 我需要导入 json 文件 所以我创建了 d ts 文件如下 test d ts declare module json const va
  • Node js,通过管道将 pdfkit 传输到内存流

    我在用pdfkit https github com devongovett pdfkit在我的节点服务器上 通常创建 pdf 文件 然后将它们上传到 s3 问题是 pdfkit 示例将 pdf 文档通过管道传输到节点写入流 该节点写入流将

随机推荐

  • 前端要懂的色域知识

    前端也要面对 五彩斑斓的红 这种世纪难题了吗 rgb 255 0 0 真的是红色吗 现在有个 CSS 色值 rgb 255 0 0 请问一下各位 在网页上展示的是什么颜色 各位可能不用思考就马上能够脱口而出 红色 But 各位有没有想过 这
  • 【Redis从入门到进阶】第 2 讲:Jedis 的快速掌握

    本文已收录于专栏 Redis从入门到进阶 专栏前言 本专栏开启 目的在于帮助大家更好的掌握学习Redis 同时也是为了记录我自己学习Redis的过程 将会从基础的数据类型开始记录 直到一些更多的应用 如缓存击穿还有分布式锁等 希望大家有问题
  • Unity接入腾讯广告/腾讯联盟/优量汇SDK操作步骤——源码+图文效果详情

    Unity接入腾讯广告 腾讯联盟 优量汇SDK操作步骤 源码 图文效果详情 前言 一 下载SDK 二 官网注册相关项目信息 1 新建媒体 2 新建广告位 三 更改代码 1 更改初始化SDK的代码 2 更改对应的ID 总结 版权声明 前言 最
  • k8s部署springboot

    前言 首先以SpringBoot应用为例介绍一下k8s的部署步骤 1 从代码仓库下载代码 比如GitLab 2 接着是进行打包 比如使用Maven 3 编写Dockerfile文件 把步骤2产生的包制作成镜像 4 上传步骤3的镜像到远程仓库
  • Ubuntu系统在终端中重启与关机

    如果你想保持当前用户的登录而并且使用root用户执行命令 可以输入 su root 即可 输入蜜码 可以运行 shutdown 命令 重启命令 1 reboot 2 shutdown r now 立刻重启 root用户使用 3 shutdo
  • Oracle 按创建时间排序,如果创建时间为空,将记录放置在最后

    oracle处理方式 在oracle中字段为空值时 被认为为最大 可通过 nulls last 将空值放到最后 语法 select from 表名 order by 排序字段 desc nulls last 实战 select from u
  • win10操作系统瘦身之微信减肥法

    很多人发现 win 10的系统盘空间一直在减少 甚至到跳出空间不足红色警告 但是又不知道哪里出问题 系统盘的容量到底被什么给吃了 所以今天就说说系统瘦身中 很管用的一个方法 减少微信的历史记录法 首先看下微信软件某个目录的空间占用情况 图1
  • 给自己的逆向工程阶段性学习感想总结

    想到哪写哪 逆向工程的学习比起近似的pwn来说 还是没那么吃基础的 不过基础知识和能力的牢固程度还是近乎决定了一个re手的上限 自己在这方面还是欠缺了不少 目前最吃亏的一个方面是代码分析能力 或者说算法能力 或者说正向能力 发现在做中难题的
  • Unity3D:角色拾取技术

    工程包下载 Unity3D虚拟现实开发之角色拾取 这个是成品图 角色拾取的原理是 由摄像机与屏幕上鼠标点击的位置确定一条射线 由此射线射向3D世界 最先和此射线相交的物体就是被选中的物体 然后对该物体的操控编写对应的代码即可 具体代码如下
  • 【python基础知识】21.高效偷懒的正确打开方式-毕业篇

    文章目录 前言 明确项目目标 分析过程 拆解项目 逐步执行 代码实现 版本1 0 输入表头 确定模版数据 阶段2 获取 复用模版数据 阶段3 0 写入csv文件 结语 前言 光阴似箭 日月如梭 不知不觉我们来到了Python基础语法课的最后
  • springboot项目启动报错:java.io.EOFException: null

    springboot项目启动时报 java io EOFException null异常 但是不影响功能 可能原因是由于tomcat上次非正常关闭时有一些活动session被持久化 表现为一些临时文件 在重启时 tomcat尝试去恢复这些s
  • ARM(IMX6U)裸机汇编LED驱动实验——驱动编写、编译链接起始地址、烧写bin文件到SD卡中并运行

    参考 Linux之ARM IMX6U 裸机汇编LED驱动实验 驱动编写 作者 一只青木呀 发布时间 2020 08 07 09 13 48 网址 https blog csdn net weixin 45309916 article det
  • Masm for Winodws 集成实验环境安装绿色免费版

    Masm for Winodws 集成实验环境安装绿色免费版 用于汇编的开发环境 绿色安全下载途径 希望能帮到有需要的人 不喜勿喷 提取文件后解压后 打开文件下载安装即可 百度网盘下载 链接 https pan baidu com s 1U
  • notepad++ 配置 python 以及Anaconda中的python(已解决)

    说明 无论是自己的电脑单独安装的python 还是Anaconda虚拟环境安装的python都是一样的 区别就是 独立安装的python 的exe文件路径添加的环境变量了 不需要制定它的路径直接运行下面的命令就可以 而Anaconda中的p
  • 常用js

    1 去掉字符串两端的空格 对字符串去两端空格 function stringTrim str if str null str undefined return null 用正则表达式将前后空格 用空字符串替代 return str repl
  • win10中不同版本jdk切换

    1 设置系统变量 java home8 java home8 以及java home 2 若无法切换jdk版本 可以在系统变量path中 删除默认路径 3 测试版本切换是否成功 一定要重启cmd
  • 使用mongodb数据库+node.js封装接口详细过程

    学习内容 使用mongodb存储数据 用node语言编写后端 学习产出 下载mongoose依赖包 npm install mongoose 创建一个js文件 keys js 文件写入路径配置 模块入口 module exports mon
  • python(六)——函数

    函数 函数 定义函数 传递实参 位置实参 关键字实参 形参默认值 缺省参数 多值参数 多值参数拆包 返回值 使用默认值让实参变为可选 通过容器返回多个变量 通过列表返回 元组返回多个返回值 函数的注释 模块 模块的定义 导入特定的函数 给导
  • 修改maven的默认镜像为阿里镜像

    在maven的配置文件中 默认的镜像仓库地址为 http repo maven apache org maven2 该地址下载jar包速度慢一些 这里可以修改为阿里的镜像仓库地址 http maven aliyun com nexus co
  • Node.js 版本管理工具 n 使用指南

    Node js 版本更新很快 目前 node v20 x 已经发布 我们在使用时避免不了会需要切换不同的 Node js 的版本来使用不同版本的特性 所以就出现了像 windows 上的 nvm MacOS 上的 n 工具 本文就介绍一下如