安装nvm 切换node版本


1. 安装 nvm

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash
验证nvm安装完成

command -v nvm
如果安装完成,就会显示如下

nvm
2. 查看 nvm 可以安装的 node 版本
查看可以安装的版本

nvm ls-remote
查看所有可以安装的LTS版本(长期支持版)

nvm ls-remote --lts
3. 安装指定版本的 node
官方推荐的安装方式 nvm install <版本号>

$ nvm install v5.5.0
但是推荐使用速度更快的方式:使用淘宝源安装

$ NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node nvm install 6
默认会安装一个系列中最新的版本

$ NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node nvm install 6     
Downloading and installing node v6.10.2...
Downloading https://npm.taobao.org/mirrors/node/v6.10.2/node-v6.10.2-darwin-x64.tar.gz...
######################################################################## 100.0%
Computing checksum with shasum -a 256
Checksums matched!
Now using node v6.10.2 (npm v3.10.10)
Creating default alias: default -> 6 (-> v6.10.2)
也可以在最后指定版本号

$ NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node nvm install 6.10.2
$ NVM_NODEJS_ORG_MIRROR=https://npm.taobao.org/mirrors/node nvm install 7.9.0
Downloading and installing node v7.9.0...
Downloading https://npm.taobao.org/mirrors/node/v7.9.0/node-v7.9.0-darwin-x64.tar.gz...
######################################################################## 100.0%
Computing checksum with shasum -a 256
Checksums matched!
Now using node v7.9.0 (npm v4.2.0)
4. 查看已经安装的 node
查看安装的版本 nvm ls

$ nvm ls
        v6.10.2
->       v7.9.0
default -> 6 (-> v6.10.2)
node -> stable (-> v7.9.0) (default)
stable -> 7.9 (-> v7.9.0) (default)
也可以通过目录查看

/Users/macroot [macroot@macroots-MacBook-Pro] [9:06]
> ls -a ~/.nvm/versions/node
.       ..      v6.10.2 v7.9.0
5. 切换 node 版本
切换node版本 nvm use <版本号>

切换至指定版本

$ nvm use v6.10.2
Now using node v6.10.2 (npm v3.10.10)
用node -v确认

$ node -v 
v6.10.2
6. 设定默认的 node 版本
设定默认的node版本 nvm alis default <版本号>

$ nvm alias default v6.6.0
default -> v6.6.0
打开新的终端,用nvm current查看当前版本显示

$ nvm current
v6.6.0
7. 卸载指定版本的 node
7.1 用户权限提升

当使用nvm uninstall <node版本号>的时候,通常会被提示:

$ nvm uninstall v6.6.0
file is not writable or self-owned: $NVM_DIR/versions/node/v6.6.0/bin/cnpm
Cannot uninstall, incorrect permissions on installation folder.
This is usually caused by running `npm install -g` as root. Run the following commands as root to fix the permissions and then try again.

  chown -R username "$NVM_DIR/versions/node/v6.6.0"
  chmod -R u+w "$NVM_DIR/versions/node/v6.6.0"
最后两行的意思是:

第1行:把指定目录的所有者改为 username 所有,这里 username 是用户名,可以改成 $(whoami) 避免输入错误。所以先输入以下命令(使用sudo):

$ sudo chown -R $(whoami) "$NVM_DIR/versions/node/v6.6.0"
第2行:u+w中u表示所有者,+表示增加权限,w表示可写入。整句表示对目录所有者增加写入权限。所以再输入(使用sudo):

$ sudo chmod -R u+w "$NVM_DIR/versions/node/v6.6.0"      
7.2 删除指定版本 node

当用户有了权限之后,就可以删除指定版本的 node

$ nvm uninstall v6.6.0
Uninstalled node v6.6.0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/6902.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot启动时通过启动参数指定logback的位置

虽然springboot可以通过简单的配置使用日志系统&#xff0c;但是由于业务往往很复杂&#xff0c;对日志的多样性配置要求比较高&#xff0c;还是习惯于依赖于logback框架本身的配置文件。在spring boot中&#xff0c;使用logback配置的方式常用的有以下几种&#xff1a; 第一种…

【javaSE】 程序逻辑控制练习代码

目录 练习1 练习2 练习3 练习4 练习5 练习6 练习7 练习8 练习9 总结 练习1 根据年龄, 来打印出当前年龄的人是少年(低于18), 青年(19-28), 中年(29-55), 老年(56以上) import java.util.Scanner;public class Age {public static void main(String[] args) {Scanner…

node中间件-express框架

文章目录 前置 Express安装1. 基本使用2. 中间件2.1 中间件应用 3. 中间件的注册方式3.1 普通中间件的注册3.2 path匹配中间件3.3 method与路径匹配3.4 案列中间件匹配与执行方法 4. 中间件request数据解析4.1 解析request body中间件4.2 urlencoded解析 5. 第三方中间件5.1 mo…

echarts图表如何自定义鼠标悬浮样式

样式调整 // formatter: {a}: {b}<br />{c}: {d}: {e} formatter: function (params) {// <i style"display:inline-block;border-radius:50%;width:4px;height:4px;background-color: #0ECB81;"></i>// ${console.log(params[0])}return <d…

android studio JNI开发

一、JNI的作用&#xff1a; 1.使Java与本地其他类型语言&#xff08;C、C&#xff09;交互&#xff1b; 2.在Java代码调用C、C等语言的代码 或者 C、C调用Java代码。 由于JAVA具有跨平台的特点&#xff0c;所以JAVA与本地代码的交互能力弱&#xff0c;采用JNI特性可以增强JA…

【收藏】用Vue.js来构建你的Web3应用,就像开发 Web2 一样熟悉

作为一名涉足去中心化网络的前端 JavaScript 开发人员&#xff0c;您可能遇到过许多 Web3 开发解决方案。但是&#xff0c;这些解决方案通常侧重于钱包集成和交易执行&#xff0c;这就造成了学习曲线&#xff0c;偏离了熟悉的 Web2 开发体验。 但不用担心&#xff01;有一种解…

算法工程师-机器学习面试题总结(1)

一、机器学习相关 1.基本概念 1-1 损失函数是什么&#xff0c;如何定义合理的损失函数&#xff1f; 损失函数是在机器学习和优化算法中使用的一种衡量模型预测结果与真实值之间差异的函数。其目标是最小化模型的预测误差&#xff0c;从而提高模型的性能。 定义合理的损失函…

导读页——记忆之路

记忆方法千千种&#xff0c;本栏意在梳理其中道道来&#xff0c;旦有小得&#xff0c;肥肠幸耶。从不同角度分析学习记忆。 文章目录 按方法分按有无逻辑分有逻辑用思维导图 无逻辑用记忆宫殿理论模仿借鉴 按方法分 学习方法–找书&#xff0c;背书&#xff0c;利器 按有无逻…

Logback解析和实例

文章目录 1、概念2、相关依赖3、基于springboot的日志搭建3.1、yml或properties 配置3.2、 logback-spring.xml 详解3.2.1、appender 解析3.2.1.1、ConsoleAppender-控制台打印3.2.1.2、FileAppender-日志输出到文件3.2.1.3、RollingFileAppender-滚动记录并输出文件3.2.1.4、f…

8.3Java EE——基于XML的AOP实现

使用AOP代理对象的好处 因为Spring AOP中的代理对象由IoC容器自动生成,所以开发者无须过多关注代理对象生成的过程,只需选择连接点、创建切面、定义切点并在XML文件中添加配置信息即可。 Spring提供了一系列配置Spring AOP的XML元素。 配置Spring AOP的XML元素 元素 描述 &l…

FastReport.Net FastReport.Core 2023.2.23 Crack

FastReport.Net & FastReport.Core 2023.2.23适用于 .NET 7、.NET Core、Blazor、ASP.NET、MVC 和 Windows 窗体的全功能报告库。它可用于 Microsoft Visual Studio 2022 和 JetBrains Rider。 利用数据呈现领域专家针对 .NET 7、.NET Core、Blazor、ASP.NET、MVC、Windo…

MtBatis学习笔记之动态SQL

文章目录 if标签where标签trim标签set标签choose when otherwise批量删除批量插入sql标签与include标签 if标签 1、if标签中的test属性是必须的 2、if标签中test属性的值是false或者true 3、如果test是true&#xff0c;则if标签中的sql语句就会拼接&#xff0c;反之&#xff0…

Jenkins从配置到实战(二) - Jenkins如何在多台机器上自动化构建

前言 jenkins除了支持在本机上进行项目构建&#xff0c;还可以将构建任务分发到其他远程服务器上去执行&#xff0c;可以实现在不同平台和架构的机器上来完成项目的自动化构建任务&#xff0c;也能减轻jenkins服务器的压力。本文章就主要介绍下此流程。 准备工作 准备两台机…

Redis—分布式系统

Redis—分布式系统 &#x1f50e;理解分布式&#x1f50e;分布式—应用服务与数据库服务分离引入更多的应用服务节点理解负载均衡 引入更多的数据库服务节点缓存分库分表 微服务 &#x1f50e;常见概念应用(Application) / 系统(System)模块(Module) / 组件(Component)分布式(D…

支持向量机概述

支持向量机在深度学习技术出现之前,使用高斯核的支持向量机在很多分类问题上取得了很好的结果,支持向量机不仅用于分类,还可以用于回归问题。它具有泛化性能好,适合小样本和高维特征的优点。 1. SVM引入 1.1支持向量机分类 支持向量机的基本模型是定义在特征空间上的间隔…

【笔记】markdown易忘速查(对勾/表格/符号/流程图)

https://www.runoob.com/markdown/md-tutorial.html 这里有较系统的免费教程&#xff0c;本篇只是个人的使用备忘录&#xff0c;仅供参考 目录 mark易忘速查目录表格链接符号公式流程/时序/甘特图 mark易忘速查 目录 [toc](目录名称)目录演示 mark易忘速查目录表格链接符号公…

2023年最全OCR技术指南!预训练OCR大模型呼之欲出

OCR是一项科技革新&#xff0c;通过自动化大幅减少人工录入的过程&#xff0c;帮助用户从图像或扫描文档中提取文字&#xff0c;并将这些文字转换为计算机可读格式。这一功能在许多需要进一步处理数据的场景中&#xff0c;如身份验证、费用管理、自动报销、业务办理等都显得尤为…

【Linux】多线程概念理论

目录 1 什么是线程&#xff1f; 2 线程的优点 3 线程的缺点 4 线程异常 5 线程用途 6 Linux线程和进程对比 1 什么是线程&#xff1f; 在一个程序里的一个执行路线就叫做线程&#xff08;thread&#xff09;。更准确的定义是&#xff1a;线程是“一个进程内部的控制序列…

网关与路由器的区别

仅需2分钟&#xff0c;彻底明白网关的工作原理_哔哩哔哩_bilibili网关_百度百科 一、网关的概念 网关(Gateway)又称网间连接器、协议转换器。网关在网络层以上实现网络互连&#xff0c;是复杂的网络互连设备&#xff0c;仅用于两个高层协议不同的网络互连。网关既可以用于广域…

【目标跟踪】1、基础知识

文章目录 一、卡尔曼滤波二、匈牙利匹配 一、卡尔曼滤波 什么是卡尔曼滤波&#xff1f;——状态估计器 卡尔曼滤波用于在包含不确定信息的系统中做出预测&#xff0c;对系统下一步要做什么进行推测&#xff0c;且会结合推测值和观测值来得到修正后的最优值卡尔曼滤波就是利用…