nvm安装及使用

文章目录

  • 一、[介绍](https://github.com/nvm-sh/nvm)
    • 1.1、卸载`node`
      • 1.1.1、从控制面板的程序卸载`node`
      • 1.1.2、删除`node`的安装目录
      • 1.1.3、查找`.npmrc`文件删除
      • 1.1.4、逐一删除下列文件
      • 1.1.5、删除`node`环境变量
      • 1.1.6、验证是否卸载成功
  • 二、安装
    • 2.1、`window`系统
    • 2.2、`mac`系统
      • 2.2.1、安装
      • 2.2.2、环境变量配置
        • 2.2.2.1、创建文件
        • 2.2.2.2、写入文件
        • 2.2.2.3、执行文件
    • 2.3、验证
  • 三、常用命令

一、介绍

nvm,全名Node Version Manager,顾名思义它是Node的版本管理工具, 有了nvm管理工具,我们就可以使用nvm的一系列命令来管理和使用不同版本的Node

1.1、卸载node

安装nvm必须要先彻底卸载当前电脑已安装的node,否则会影响nvm的安装和后续的执行
逐步执行以下卸载步骤:

1.1.1、从控制面板的程序卸载node

控制面板->卸载程序->找到nodejs右键->卸载

1.1.2、删除node的安装目录

默认是C:\Program Files\nodejs,也可能在其他盘,这取决于安装时的选择

1.1.3、查找.npmrc文件删除

默认在C:\User\用户名(例如:C:\Users\Public

1.1.4、逐一删除下列文件

C:\Program Files (x86)\Nodejs
C:\Program Files\Nodejs
C:\Users\用户名\AppData\Roaming\npm
C:\Users\用户名\AppData\Roaming\npm-cache

1.1.5、删除node环境变量

node相关的配置都删掉,环境变量打开方式:右键我的电脑->属性->高级->环境变量-> 用户变量的Path删除->系统变量的NODE_PATH里的node删掉

1.1.6、验证是否卸载成功

检查nodenpm,在cmd中输入node -vnpm -v,确保已经卸载掉

二、安装

2.1、window系统

在这里插入图片描述

点击【下载】最新版本的nvm-setup.exe或者nvm-setup.zipzip压缩包要解压,双击打开exe文件即可安装

2.2、mac系统

2.2.1、安装

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

2.2.2、环境变量配置

涉及到需要配置.bash_prefile.zshrc两个文件,还有.profile文件

2.2.2.1、创建文件

~目录下查看是否有这2个文件,如果没有的话需要创建,如下所示:

touch .zshrc
touch .bash_profile
touch .profile
2.2.2.2、写入文件
open -e ~/.zshrc
open -e ~/.bash_profile
open -e ~/.profile

.bash_prefile.zshrc2个文件,写入如下内容:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

.profile文件写入如下内容:

export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh
2.2.2.3、执行文件
source ~/.bash_profile 
source ~/.zshrc
source ~/.profile

2.3、验证

查看nvm版本,有打印版本号就是安装成功

nvm -v

三、常用命令

// 打印出所有的版本
nvm ls

// 查看网络上可以安装的版本
nvm list available

// 安装最稳定的版本
nvm install stable

// 当前使用的node版本
nvm current

// 安装指定版本的node
nvm install node版本号(如:nvm install 14.16.0)

// 使用指定版本的node
nvm use node版本号

// 使用最新版本的node
nvm use node版本号

// 卸载指定版本的node
nvm uninstall node版本号

// 设置默认 node 版本为 0.12.7
nvm alias default 0.12.7

// 设置node别名
nvm alias current-version node版本号

// 取消别名
nvm unalias current-version

// 设置默认 node 版本为 0.12.7
nvm alias default 0.12.7

// 设置node别名
nvm alias current-version node版本号

// 取消别名
nvm unalias current-version

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

php高级工程师范文模板

以下简历内容以php高级工程师招聘需求为背景,我们制作了1份全面、专业且具有参考价值的简历案例,大家可以灵活借鉴,希望能帮助大家在众多候选人中脱颖而出。 php高级工程师简历在线制作下载:百度幻主简历 求职意向 求职类型&…

vue+springboot读取git的markdown文件并展示

前言 最近,在研究一个如何将我们git项目的MARKDOWN文档获取到,并且可以展示到界面通过检索查到,于是经过几天的摸索,成功的研究了出来 本次前端vue使用的是Markdown-it Markdown-it 是一个用于解析和渲染 Markdown 标记语言的 …

Vue 2.0源码分析-Virtual DOM

Virtual DOM 这个概念相信大部分人都不会陌生,它产生的前提是浏览器中的 DOM 是很“昂贵"的,为了更直观的感受,我们可以简单的把一个简单的 div 元素的属性都打印出来,如图所示: 可以看到,真正的 DOM …

C语言-指针讲解(3)

文章目录 1.字符指针变量1.1 字符指针变量类型是什么1.2字符指针变量的两种使用方法:1.3字符指针笔试题讲解1.3.1 代码解剖 2.数组指针变量2.1 什么是数组指针2.2 数组指针变量是什么?2.2.3 数组指针变量的举例 2.3数组指针和指针数组的区别是什么&#…

javascript判断是否是json格式

文章目录 一、问题二、解决三、总结3.1、定义 一、问题 工作中有用到JSON.parse这个来解析JSON字符串,这个时候突然有一次遇到JSON字符串是长串数字或数字字符串,主要是自己也没兼容好,就导致了一长串数字JSON.parse之后变成了e24等数字。主…

中低压MOSFET 2N7002W 60V 300mA 双N通道 SOT-323封装

2N7002W小电流双N通道MOSFET,电压60V电流300mA,采用SOT-323封装形式。超高密度电池设计,适用于极低的ros (on),具有导通电阻和最大直流电流能力,ESD保护。可应用于笔记本中的电源管理,电池供电系统等产品应…

Selenium实现多页面切换

当使用 Selenium 进行自动化测试或爬取数据时,有时需要处理多个页面之间的切换。以下是一些可能需要多页面切换的情况: 1、打开新窗口/页面: 在当前页面上点击链接、按钮或执行某些操作时,可能会打开一个新的窗口或页面。此时&a…

Appium+Python+pytest自动化测试框架的实战

本文主要介绍了AppiumPythonpytest自动化测试框架的实战,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 先简单介绍一下目录,再贴一些代码,代码里有注释 Basic目录下写的是一些公…

【C++】泛型编程 ⑮ ( 类模板示例 - 数组类模板 | 自定义类中持有指针成员变量 )

文章目录 一、支持 数组类模板 存储的 自定义类1、可拷贝和可打印的自定义类2、改进方向3、改进方向 - 构造函数4、改进方向 - 析构函数5、改进方向 - 重载左移运算符6、改进方向 - 重载拷贝构造函数 和 等号运算符 二、代码示例1、Array.h 头文件2、Array.cpp 代码文件3、Test…

io.lettuce.core.RedisCommandExecutionException

io.lettuce.core.RedisCommandExecutionException: ERR invalid password ERR invalid password-CSDN博客 io.lettuce.core.RedisCommandExecutionException /** Copyright 2011-2022 the original author or authors.** Licensed under the Apache License, Version 2.0 (the…

RabbitMQ基础教程

1.什么是消息队列 消息队列(Message Queue),我们一般简称为MQ。消息队列中间件是分布式系统中重要的组件,具有异步性、松耦合、分布式、可靠性等特点。用于实现高性能、高可用、可伸缩和最终一致性架构。是大型分布式系统不可缺少…

JVM类加载的过程和JVM垃圾回收机制

文章目录 一、JVM类加载的过程1.1类加载的基本流程1.1.1加载1.1.2验证1.1.3准备1.1.4解析1.1.5初始化 1.2双亲委派模型 二、JVM垃圾回收机制2.1找到垃圾2.1.1引用计数(比如Python,PHP中用到)2.1.2可达性分析(比如Java中用到) 2.2释放垃圾2.2.1标记清除2.2.2复制算法…

RAM模型从数据准备到pretrain、finetune与推理全过程详细说明

提示:RAM模型:环境安装、数据准备与说明、模型推理、模型finetune、模型pretrain等 文章目录 前言一、环境安装二、数据准备与解读1.数据下载2.数据标签内容解读3.标签map内容解读 三、finetune训练1.微调训练命令2.load载入参数问题3.权重载入4.数据加载…

大数据技术之数据安全与网络安全——CMS靶场实训

大数据技术之数据安全与网络安全——CMS靶场实训 在当今数字化时代,大数据技术的迅猛发展带来了前所未有的数据增长,同时也催生了对数据安全和网络安全的更为迫切的需求。本篇博客将聚焦于大数据技术背景下的数据安全与网络安全,并通过CMS&a…

4.操作系统常见面试题(2)

3.4 虚拟内存 直接使⽤物理内存会产⽣⼀些问题 1. 内存空间利⽤率的问题:各个进程对内存的使⽤会导致内存碎⽚化,当要⽤ malloc 分配⼀块很⼤的内存空间时,可能会出现虽然有⾜够多的空闲物理内存,却没有⾜够⼤的连续空闲内存这种…

点大商城V2.5.3分包小程序端+小程序上传提示限制分包制作教程

这几天很多播播资源会员反馈点大商城V2.5.3小程序端上传时提示大小超限,官方默认单个包都不能超过2M,总分包不能超20M。如下图提示超了93KB,如果出现超的不多情况下可采用手动删除一些images目录下不使用的图片,只要删除超过100KB…

82基于matlab GUI的图像处理

基于matlab GUI的图像处理,功能包括图像一般处理(灰度图像、二值图);图像几何变换(旋转可输入旋转角度、平移、镜像)、图像边缘检测(拉普拉斯算子、sobel算子、wallis算子、roberts算子&#xf…

unordered_map 与 unordered_set 的模拟实现

unordered_map 与 unordred_set 的模拟实现与 map 与 set 的模拟实现差不多。map 与 set 的模拟实现中,底层的数据结构是红黑树。unordered_map 与 unordered_set 的底层数据结构是哈希表。因此,在模拟实现 unordered_map 与 unordred_set 之前你必须确保…

nodejs微信小程序+python+PHP-青云商场管理系统的设计与实现-安卓-计算机毕业设计

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性:…

org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder

密码,加密,解密 spring-security-crypto-5.7.3.jar /** Copyright 2002-2011 the original author or authors.** Licensed under the Apache License, Version 2.0 (the "License");* you may not use this file except in compliance with t…