1、NVM 简介

  • NVM(node version manager)是一个可以让你在同一台机器上安装和切换不同版本 node 的工具。

  • GitHub 地址

2、NVM 环境配置

2.1 安装 NVM

  • 如果系统没有安装 git 的话,需先安装 git。

  • 在终端输入以下命令安装 NVM。

    # 安装 NVM
    $ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
  • 安装完成后在终端中输入以下命令配置环境变量。

    # 打开环境变量配置文件
    $ vim ~/.bash_profile
  • 在 .bash_profile 文件中添加一下字段。

    source ~/.bashrc
  • 保存文件退出,在终端中输入以下命令使配置生效。

    # 使环境变量配置生效
    $ source ~/.bash_profile

2.2 NVM 常用命令

  • 常用命令

    # 查看该系统已经安装的版本,这个命令也能看到当前使用的是哪个版本
    $ nvm ls # 列出全部可以安装的版本号
    $ nvm ls-remote # 安装指定版本
    $ nvm install [version]
    $ nvm install v10.2.0 # 切换到指定版本,切换效果是全局的
    $ nvm use [version]
    $ nvm use v10.2.0 # 查看当前使用的版本
    $ nvm current
    Note: <version> refers to any version-like string nvm understands. This includes:
    - full or partial version numbers, starting with an optional "v" (0.10, v0.1.2, v1)
    - default (built-in) aliases: node, stable, unstable, iojs, system
    - custom aliases you define with `nvm alias foo` Any options that produce colorized output should respect the `--no-colors` option. Usage:
    nvm --help Show this message
    nvm --version Print out the installed version of nvm
    nvm install [-s] <version> Download and install a <version>, [-s] from source. Uses .nvmrc if available
    --reinstall-packages-from=<version> When installing, reinstall packages installed in <node|iojs|node version number>
    --lts When installing, only select from LTS (long-term support) versions
    --lts=<LTS name> When installing, only select from versions for a specific LTS line
    --skip-default-packages When installing, skip the default-packages file if it exists
    --latest-npm After installing, attempt to upgrade to the latest working npm on the given node version
    nvm uninstall <version> Uninstall a version
    nvm uninstall --lts Uninstall using automatic LTS (long-term support) alias `lts/*`, if available.
    nvm uninstall --lts=<LTS name> Uninstall using automatic alias for provided LTS line, if available.
    nvm use [--silent] <version> Modify PATH to use <version>. Uses .nvmrc if available
    --lts Uses automatic LTS (long-term support) alias `lts/*`, if available.
    --lts=<LTS name> Uses automatic alias for provided LTS line, if available.
    nvm exec [--silent] <version> [<command>] Run <command> on <version>. Uses .nvmrc if available
    --lts Uses automatic LTS (long-term support) alias `lts/*`, if available.
    --lts=<LTS name> Uses automatic alias for provided LTS line, if available.
    nvm run [--silent] <version> [<args>] Run `node` on <version> with <args> as arguments. Uses .nvmrc if available
    --lts Uses automatic LTS (long-term support) alias `lts/*`, if available.
    --lts=<LTS name> Uses automatic alias for provided LTS line, if available.
    nvm current Display currently activated version
    nvm ls List installed versions
    nvm ls <version> List versions matching a given <version>
    nvm ls-remote List remote versions available for install
    --lts When listing, only show LTS (long-term support) versions
    nvm ls-remote <version> List remote versions available for install, matching a given <version>
    --lts When listing, only show LTS (long-term support) versions
    --lts=<LTS name> When listing, only show versions for a specific LTS line
    nvm version <version> Resolve the given description to a single local version
    nvm version-remote <version> Resolve the given description to a single remote version
    --lts When listing, only select from LTS (long-term support) versions
    --lts=<LTS name> When listing, only select from versions for a specific LTS line
    nvm deactivate Undo effects of `nvm` on current shell
    nvm alias [<pattern>] Show all aliases beginning with <pattern>
    nvm alias <name> <version> Set an alias named <name> pointing to <version>
    nvm unalias <name> Deletes the alias named <name>
    nvm install-latest-npm Attempt to upgrade to the latest working `npm` on the current node version
    nvm reinstall-packages <version> Reinstall global `npm` packages contained in <version> to current version
    nvm unload Unload `nvm` from shell
    nvm which [current | <version>] Display path to installed node version. Uses .nvmrc if available
    nvm cache dir Display path to the cache directory for nvm
    nvm cache clear Empty cache directory for nvm Example:
    nvm install 8.0.0 Install a specific version number
    nvm use 8.0 Use the latest available 8.0.x release
    nvm run 6.10.3 app.js Run app.js using node 6.10.3
    nvm exec 4.8.3 node app.js Run `node app.js` with the PATH pointing to node 4.8.3
    nvm alias default 8.1.0 Set default node version on a shell
    nvm alias default node Always default to the latest available node version on a shell Note:
    to remove, delete, or uninstall nvm - just remove the `$NVM_DIR` folder (usually `~/.nvm`)

Mac NVM 配置的更多相关文章

  1. Mac下配置node.js 和react-native

    最近对JS挺感兴趣的,就琢磨着在mac上配置下环境学习学习,正巧看到了Facebook的react-native,顺便配置了一下. 安装Homebrew 终端输入: ruby -e "$(c ...

  2. 在Mac上配置adb命令

    在Mac上配置adb命令 在Mac OS中使用adb命令时,应进行变量配置,步骤如下: 一.终端中输入 cd ~ 二.输入touch .bash_profile 回车 touch:如果没有,则创建文件 ...

  3. 在Mac下配置php开发环境:Apache+php+MySql

    /private/etc/apache2/httpd.conf 一.启动Apache sudo apachectl start sudo apachectl -v   可以查看到Apache的版本信息 ...

  4. iOS开发MAC下配置svn

    版本控制对于团队合作显得尤为重要,那么如何在iOS开发中进行版本控制呢?在今天的博客中将会介绍如何在MAC下配置SVN服务器,如何导入我们的工程,如何在Xcode中进行工程的checkOut和Comm ...

  5. mac下配置openfire

    下载 在浏览器中打开如下网址http://www.igniterealtime.org/downloads/index.jsp,根据你的操作系统选择对应的版本进行下载,这里我是在mac下配置的,所以选 ...

  6. Mac下配置idk

    Mac下配置java #以下进入啰嗦模式演示添加jdk7 #下载jdk7的mac版 #官网下载地址http://www.oracle.com/technetwork/java/javase/downl ...

  7. MAC OX 配置JDK环境变量

    大家在windows里面配置JDK环境变量很容易,但是如果要在mac里面配置JDK环境变量和windows里面有所不同,具体如下: 第一: mac OS里面自带jdk,不过是1.6的版本,现在很多人使 ...

  8. mac eclipse配置 tomcat

    mac由于各种软件不兼容,某些软件对于开发来说很苦恼,tomcat这个东西一直不知道怎么弄,项目都开了好几天了,一直用在虚拟机上用windows系统,但是用虚拟机明显感觉到电池待机时间更短了,所以就研 ...

  9. CAS (1) —— Mac下配置CAS到Tomcat(服务端)(转)

    tomcat版本: tomcat-8.0.29 jdk版本: jdk1.8.0_65 cas版本: cas4.1.2cas-client-3.4.1 参考来源: CAS实现单点登录(SSO)经典完整教 ...

随机推荐

  1. Java大数相加(多个大数相加)-hdu1250

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1250 题目描述: 题目大意是:已知一个Hat's Fibonacci序列,该序列满足F(1) = 1, ...

  2. 2601 电路维修 (双端队列bfs\优先队列bfs(最短路))

    描述 Ha'nyu是来自异世界的魔女,她在漫无目的地四处漂流的时候,遇到了善良的少女Rika,从而被收留在地球上.Rika的家里有一辆飞行车.有一天飞行车的电路板突然出现了故障,导致无法启动. 电路板 ...

  3. Shell学习之Bash变量详解(二)

    Shell学习之Bash变量详解 目录 Bash变量 Bash变量注意点 用户自定义变量 环境变量 位置参数变量 预定义变量 Bash变量 用户自定义变量:在Bash中由用户定义的变量. 环境变量:这 ...

  4. [译] Go数据结构-接口

    原文 Go Data Structures: Interfaces 作者 Russ Cox 声明:本文目的仅仅作为个人mark,所以在翻译的过程中参杂了自己的思想甚至改变了部分内容.但由于译者水平有限 ...

  5. 牛客练习赛37-筱玛的字符串-DP递推

    筱玛的字符串 思路 :dp [ i ] [ j ] [ 3 ] 分别代表到第 i 位时 左括号比右括号多 j ,后面有三个状态 分别表示当前位置 S3的字符 是正在反转的,还是 反转完成的,还是没有反 ...

  6. 正确实现用spring扫描自定义的annotation

    背景在使用spring时,有时候有会有一些自定义annotation的需求,比如一些Listener的回调函数. 比如: @Service public class MyService { @MyLi ...

  7. SpringBoot整合mongoDB

    MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. 这一片文章介绍一个springboot整合mongodb,如果你了解整合mysql之类的 ...

  8. react组件通信那些事儿

    父组件是调用组件的组件.现在看来,感觉父组件就是一个壳子,定义好壳子里面会有什么,而子组件是一个具体的实现,说明,会用到什么东西,如果有这些东西,会进行什么操作.总之,父组件是材料,有水和泥,子组件告 ...

  9. spring 空指针报错,Could not create connection to database server.

    驱动问题,换成最近版本的mysql驱动

  10. helm-chart4,流程控制和变量

    控制结构(模板说法中称为"动作")提供了控制模板生成流程的能力.Helm的模板语言提供了以下控制结构: if/ else用于创建条件块 with 指定范围 range,它提供了一个 ...