nvm安装实现node多版本的切换

news2024/9/20 14:03:33

nvm安装实现node多版本的切换

  • 方式一 下载安装包安装
    • 下载安装包
    • 解压安装
    • 设置 nvm 环境变量
    • 查看 nvm 是否安装完成
    • 安装 node 环境
    • 切换 node 版本
    • 列出已经安装的版本
  • 方式二 一键脚本安装
    • 下载安装
    • 查看 nvm 是否安装完成
    • 安装 node 环境
    • 切换 node 版本
    • 列出已经安装的版本
    • nvm相关命令

Linux安装nvm管理工具(v0.40.1)

方式一 下载安装包安装

下载安装包

wget https://github.com/nvm-sh/nvm/archive/refs/tags/v0.40.1.tar.gz

如果环境限制不通外网,可以先将包下载到本地,通过rz命令将安装包上传到服务器。

解压安装

tar  -xvf nvm-0.40.1.tar.gz
mv  nvm-0.40.1   /opt/

# 如果没有执行权限给一下执行权限
chmod +x /opt/nvm-0.40.1/nvm.sh

设置 nvm 环境变量

vim /etc/profile在文件最后面添加下面变量

export NVM_DIR="/opt/nvm-0.40.1"
[ -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

执行文件并从文件中加载变量及函数到执行环境

source /etc/profile

查看 nvm 是否安装完成

[root@w ~]# nvm -v

安装 node 环境

# 安装 node 版本,可以安装多个版本,安装命令只能在服务器上执行才能生效
nvm install  v17.9.1
nvm install  v16.9.1

切换 node 版本

nvm use v16.14.2

列出已经安装的版本

nvm ls

方式二 一键脚本安装

下载安装

要安装或更新nvm,您应该运行安装脚本。为此,您可以手动下载并运行脚本,或者使用以下 cURL 或 Wget 命令:

以下2个命令可任选一个运行 进行安装。
1. curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash

2. wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash

运行上述任一命令都会下载并运行脚本。
该脚本将 nvm 存储库克隆到/.nvm,并尝试将下面代码片段中的源代码行添加到正确的配置文件(/.bash_profile、/.zshrc、/.profile或~/.bashrc)。形成环境变量

export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

查看 nvm 是否安装完成

[root@w ~]# nvm -v

安装 node 环境

# 安装 node 版本,可以安装多个版本,安装命令只能在服务器上执行才能生效
nvm install  v17.9.1
nvm install  v16.9.1

切换 node 版本

nvm use v16.14.2

列出已经安装的版本

nvm ls

两种安装方式其实实际区别不是很大, 可以认为是:

  • 通过方式一 安装的话,可以自定义安装路径和环境变量
  • 通过方式二 是直接执行安装脚本,默认形成安装路劲了,只需执行一条命令就安装成功了。(其实安装路径和环境变量根据需求也是可以自定义的)

提示点:

  • nvm安装好之后,通过 nvm install [node版本号] 安装指定版本 node 似乎需要在有网条件下进行。 因为是要去下载远程服务器的node

  • ndoe 的版本 v18.0.0 以上版本的 可能会存在glibc系统兼容性。可能需要根据实际情况升级glibc。
    具体提示如同:
    在这里插入图片描述

nvm相关命令

nvm ls-remote :列出所有远程服务器的版本(官方node version list)

nvm list :列出所有已安装的 node 版本

nvm list available :显示所有可下载的版本

nvm install stable :安装最新版 node

nvm install [node版本号] :安装指定版本 node

nvm uninstall [node版本号] :删除已安装的指定版本

nvm use [node版本号] :切换到指定版本 node

nvm current :当前 node 版本

nvm alias [别名] [node版本号] :给不同的版本号添加别名

nvm unalias [别名] :删除已定义的别名

nvm alias default [node版本号] :设置默认版本

附:nvm 地址链接
https://github.com/nvm-sh/nvm

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

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

相关文章

PyTorch中的学习率预热(warmup)

PyTorch提供了学习率调度器(learning rate schedulers),用于在训练过程中实现各种调整学习率的方法。实现在torch.optim.lr_scheduler.py中,根据epoch数调整学习率。大多数学习率调度器可以称为背对背(back-to-back),也称为链式调度器&#x…

Linux入门2

文章目录 一、Linux基本命令1.1 文件的创建和查看命令1.2 文件的复制移动删除等命令1.3 查找命令1.4 文件的筛选和管道的使用1.5 echo、tail和重定向符 二、via编辑器三、权限控制3.1 root用户(超级管理员)3.2 用户和用户组3.3 权限信息3.4 chmod命令 一…

Streamlit:使用 Python 快速开发 Web 应用

一、简单介绍 Streamlit 是一个开源 Python 库,官网地址: https://streamlit.io/http://StreamlitStreamlit 是一个开源的 Python 框架,旨在为数据科学家和 后端工程师们提供只需几行代码即可创建动态数据应用的功能。 让没有任何前端基础…

C#软键盘设计字母数字按键处理相关事件函数

应用场景:便携式设备和检测设备等小型设备经常使用触摸屏来代替键盘鼠标的使用,因此在查询和输入界面的文本或者数字输入控件中使用软件盘来代替真正键盘的输入。 软键盘界面:软键盘界面实质上就是一个普通的窗体上面摆放了很多图片按钮&…

使用SpringCloud构建可伸缩的微服务架构

Spring Cloud是一个用于构建分布式系统的开源框架。它基于Spring Boot构建,并提供了一系列的工具和组件,用于简化开发分布式系统的难度。Spring Cloud可以帮助开发人员快速构建可伸缩的微服务架构。 要使用Spring Cloud构建可伸缩的微服务架构&#xff0…

实时监控局域网计算机桌面怎么设置!五个可实现的方法分享,绝了!

员工在工作时间里究竟在做什么?他们的网络活动是否合规?如何确保敏感信息不被泄露? 在企业管理层面,实时监控局域网计算机桌面已成为提升工作效率、确保数据安全与规范员工行为的重要手段。 技术的不断进步,多种解决…

【C++进阶】map和set的使用

【C进阶】map和set的使用 🥕个人主页:开敲🍉 🔥所属专栏:C🥭 🌼文章目录🌼 1. 序列式容器和关联式容器 2. set系列的使用 2.1 set 和 multiset 2.2 set 类的介绍 2.3 set 的构造和…

【Linux篇】常用命令及操作技巧(基础篇)

🌏个人博客主页:意疏-CSDN博客 希望文章能够给到初学的你一些启发~ 如果觉得文章对你有帮助的话,点赞 关注 收藏支持一下笔者吧~ 阅读指南: 开篇说明帮助命令常见的七个linux操作终端实用的技巧跟文件目录…

C++11之统一的列表初始化

一.{}初始化 在c98中,标准允许使用{}对数组或结构体元素进行统一的列表初始值设定: struct mess {int _x;string _str; }; int main() {//注意,使用new的一定是指针int* arr new int[4] {1, 2, 3, 4};//数组初始化int arr[] { 1,3,5,6 };…

基于Spring Boot和Vue的私人牙科诊所系统的设计与实现(毕业论文)

目 录 1 前言 1 1.1 研究目的与意义 1 1.2 国内外研究概况 1 1.3 主要研究内容 2 1.4 论文结构 3 2 系统分析 3 2.1 可行性分析 3 2.1.1 技术可行性分析 3 2.1.2 经济可行性分析 3 2.1.3 操作可行性分析 4 2.1.4 法律可行性分析 4 2.2 需求分析 4 2.2.1 管理员需求分析 4 2.2.2…

3.1 数据表的基本查询

我们学习的怎么管理逻辑空间,怎么创建数据表,怎么定义字段,怎么创建索引,这些都是DDL语句。从本次课开始,我们来学习DML语句,也就是该如何增删改查操作数据。我们学习DML语句的前提是数据表要有足够多的数据…

Moving Elevator System Fully functional

这是一个功能齐全的电梯系统,配有电梯箱车、电梯井、电缆和每层的门框 电梯完全被操纵,有动画门、电缆线、滑轮系统。 还有几个C#脚本文件控制电梯、门和灯。 此套餐还包括相关声音,如电梯移动、门打开/关闭、楼层铃叮。 电梯车厢有工作门和按钮,车顶还有一个逃生舱口。 每…

低投入、高效率 基于PHP+MySQL组合开发的求职招聘小程序源码系统 带完整的安装代码包以及搭建部署教程

系统概述 这款求职招聘小程序源码系统是专门为求职招聘领域打造的综合性平台。它利用 PHP 强大的编程语言特性和 MySQL 稳定的数据存储功能,实现了一个功能齐全、性能优越的求职招聘系统。 整个系统架构设计合理,具备良好的扩展性和兼容性。无论是小型…

从《中国数据库前世今生》看中国数据库技术的发展与挑战

从《中国数据库前世今生》看中国数据库技术的发展与挑战 引言 在当今数字化浪潮中,数据库技术已成为支撑全球经济运行的核心基础设施。作为程序员,我一直对数据库技术的发展充满好奇。《中国数据库前世今生》纪录片深入探索了中国数据库技术的演变历程…

【Python报错已解决】libpng warning: iccp: known incorrect sRGB profile

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 专栏介绍 在软件开发和日常使用中,BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…

怎么把图片压缩变小?把图片压缩变小的八种压缩方法介绍

怎么把图片压缩变小?在当今这个信息高度共享的时代,图片不仅仅是简单的视觉元素,它们承载着我们的记忆、故事和创意。无论是旅行的风景、家庭的聚会,还是工作中的项目展示,图片都在我们的生活中扮演着不可或缺的角色。…

帕金森患者必看!这5种水果成“抗抖”小能手,吃出健康好生活!

在这个快节奏的时代,健康成为了我们最宝贵的财富之一。而对于帕金森病患者而言,如何在日常生活中通过合理的饮食来缓解症状、提升生活质量,成为了许多家庭关注的焦点。今天,就让我们一起探索那些被誉为“抗抖”小能手的水果&#…

Pandas -----------------------基础知识(一)

目录 Series对象 属性和方法 布尔值列表获取Series对象中部分数据 运算 DateFrame对象 常用属性 常见方法 运算 总结 Series对象 是DataFrame的列对象或者行对象 生成Series对象生成索引使用元组创建Series对象使用字典创建Series对象 通过Pandas创建对象 自定义索引 …

RealityCapture1.4设置成中文

RealityCapture 1.4 设置成中文的教程 RealityCapture 1.4 是一款强大的三维建模软件,它能够从图像或激光扫描中创建实景三维模型和正射影像等。以下是一个详细的教程,指导您如何将 RealityCapture 1.4 的界面设置为中文。 1.找到设置按钮 在WORKFLOW…

【一起学NLP】Chapter1-基本语法与神经网络的推理

备注:本专栏为个人的NLP学习笔记,欢迎大家共同讨论交流学习。代码同步:https://github.com/codesknight/Learning-NLP-Together 参考书籍:《深度学习进阶:自然语言处理》——斋藤康毅 目录 基础知识点复习测试环境使用…