nvm

介绍

nvm is a version manager for node.js, designed to be installed per-user, and invoked per-shell. nvm works on any POSIX-compliant shell (sh, dash, ksh, zsh, bash), in particular on these platforms:unix, macOS,windows(WSL).

nvmnode.js 的版本管理器,设计为按用户安装,按 shell 调用。 nvm 适用于任何符合 POSIX 的 shell(sh、dash、ksh、zsh、bash),特别是在这些平台上:unixmacOS,和 windows(WSL)

下载并更新

终端输入以下命令下载并更新nvm

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

其中 v0.38.0 为版本号,具体版本号可前往 github 网站查看:nvm-sh/nvm

安装完成后,可以使用命令nvm version查询到当前安装信息:

[root@instance ~]# nvm version
v16.3.0

安装Node

  1. 查看可用node版本
    使用nvm version或者前往 下载 | Node.js (nodejs.org) 查看版本号。
  2. 查看当前以安装使用的node版本

    nvm ls
  3. 安装指定版本号的node.js,以 16.3.0 版本为例:

    nvm install 16.3.0
  4. 使用特定版本的 node.js

    nvm on   #开启nvm管理
    nvm use 16.3.0 #使用16.3.0版本的node
  5. 验证安装是否成功

    node -v #验证node版本
    npm -v#验证npm版本
    [root@instance-4khkbgwo ~]# node -v  #验证node版本
    v16.3.0
    [root@instance-4khkbgwo ~]# npm -v#验证npm版本
    7.15.1

命令大全

nvm --help                                
#显示此消息
nvm --version                              
#打印出安装的 nvm 版本
nvm install [-s] <version>                
#从源下载并安装 <version>,[-s]。如果可用,使用 .nvmrc
  --reinstall-packages-from=<version>      
  #安装时,重新安装<node|iojs|node version number>中安装的包
  --lts                                    
  #安装时,只能从LTS(长期支持)版本中选择
  --lts=<LTS name>                         
  #安装时,仅从特定 LTS 行的版本中选择
  --skip-default-packages                  
  #安装时,跳过 default-packages 文件(如果存在)
  --latest-npm                            
  #安装后,尝试在给定节点版本上升级到最新的工作 npm
nvm uninstall <version>                    
#卸载一个版本
nvm uninstall --lts                        
#如果可用,使用自动 LTS(长期支持)别名 `lts` 卸载。
nvm uninstall --lts=<LTS name>             
#使用提供的 LTS 行的自动别名卸载(如果可用)。
nvm use [--silent] <version>               
#修改 PATH 以使用 <version>。如果可用,使用 .nvmrc
  --lts                                   
  #如果可用,使用自动 LTS(长期支持)别名 `lts`。
  --lts=<LTS name>                         
  #如果可用,为提供的 LTS 行使用自动别名。
nvm exec [--silent] <version> [<command>]  
#在 <version> 上运行 <command>。如果可用,使用 .nvmrc
  --lts                                    
  #如果可用,使用自动 LTS(长期支持)别名 `lts`。
  --lts=<LTS name>                         
  #如果可用,为提供的 LTS 行使用自动别名。
nvm run [--silent] <version> [<args>]      
#使用 <args> 作为参数在 <version> 上运行 `node`。如果可用,使用 .nvmrc
  --lts                                    
  #如果可用,使用自动 LTS(长期支持)别名 `lts`。
  --lts=<LTS name>                         
  #如果可用,为提供的 LTS 行使用自动别名。
nvm current                                
#显示当前激活的版本
nvm ls                                     
#列出已安装的版本
nvm ls <version>                           
#列出与给定 <version> 匹配的版本
nvm ls-remote                              
#列出源所有可安装的版本
  --lts                                    
  #只列出源LTS(长期支持)的版本
nvm ls-remote <version>                    
#列出与给定<version>
  --lts                                    
  #列出时,只显示LTS(长期支持)版本
  --lts=<LTS name>                         
  #列出时,仅显示特定LTS行的版本
nvm version <version>                      
#将给定的描述解析为单个本地版本
nvm version-remote <version>               
#将给定的描述解析为单个远程版本
  --lts                                    
  #列出时,仅从LTS(长期支持)版本中选择
  --lts=<LTS name>                         
  #列出时,仅从特定LTS行的版本中选择
nvm deactivate                             
#撤消“nvm”对当前shell的影响
nvm alias [<pattern>]                      
#显示以<pattern>开头的所有别名
nvm alias <name> <version>                 
#将名为<name>的别名设置为指向<version>
nvm unalias <name>                         
#删除名为<name>
nvm install-latest-npm   
#尝试在当前节点版本上升级到最新的“npm”
nvm reinstall-packages <version>   
#将<version>中包含的全局“npm”包重新安装到当前版本
nvm unload   
#从shell卸载“nvm”
nvm which [current | <version>]   
#显示已安装节点版本的路径。使用.nvmrc(如果可用)
nvm cache dir   
#显示nvm缓存目录的路径
nvm cache clear   
#清楚nvm的缓存

nrm

nrm 可以帮助您在不同的npm注册中心之间轻松快速地切换,现在包括:npmcnpmtaobao

使用

  1. 安装

    npm install -g nrm
  2. 查看所有可用npm源nrm ls

    [root@instance ~]# nrm ls
    ​
    * npm -------- https://registry.npmjs.org/
      yarn ------- https://registry.yarnpkg.com/
      cnpm ------- http://r.cnpmjs.org/
      taobao ----- https://registry.npm.taobao.org/
      nj --------- https://registry.nodejitsu.com/
      npmMirror -- https://skimdb.npmjs.com/registry/
      edunpm ----- http://registry.enpmjs.org/
  3. 更换cnpm

    [root@instance ~]# nrm use cnpm     
       Registry has been set to: http://r.cnpmjs.org/
  4. 验证

    [root@instance ~]# cnpm --version
    cnpm@6.2.0 (/opt/node/lib/node_modules/cnpm/lib/parse_argv.js)
如果觉得我的文章对你有用,请随意赞赏