[{"data":1,"prerenderedAt":1125},["ShallowReactive",2],{"node":3},[4],{"id":5,"title":6,"articleId":7,"articleThumb":8,"body":9,"categoryId":592,"categoryInfo":1099,"createDate":1101,"description":1102,"excerpt":1103,"extension":1107,"isHidden":1108,"isHot":1109,"isRecommend":1109,"isTop":1108,"keywords":1110,"meta":1111,"navigation":1109,"path":1112,"rawbody":1113,"readingTime":564,"seo":1114,"sitemap":1115,"stem":1116,"tagIds":1117,"tagInfo":1118,"updateDate":1122,"wordCount":1123,"__hash__":1124},"blog\u002Fblog\u002F7.Windows和Linux系统上NVM安装多个版本的Node.js.md","Windows和Linux系统上NVM安装多个版本的Node.js","20250616213326","https:\u002F\u002Fgcore.jsdelivr.net\u002Fgh\u002FAnyFork\u002FResource\u002Fimages\u002F20260327205225806.webp",{"type":10,"value":11,"toc":1085},"minimark",[12,16,34,39,56,110,115,137,142,149,158,161,170,175,195,200,203,224,227,231,245,250,255,287,292,315,320,323,422,432,437,453,458,472,475,479,488,492,497,601,606,615,618,656,662,667,706,711,727,731,736,753,762,767,782,787,888,893,906,910,914,919,930,935,943,947,952,960,974,979,988,1049,1068,1081],[13,14,15],"p",{},"NVM（Node Version Manager）是专为Node.js设计的版本管理工具，用于安装和管理多个不同版本的Node.js，允许在同一台机器上安装、切换和使用多个不同版本的Node.js，适用于开发者处理多个项目需要不同Node版本的需求。本文从Windows和Linux2个不同的操作系统入手，简单记录NVM安装不同Node.js的使用步骤。",[17,18,23],"callout",{"color":19,"icon":20,"target":21,"to":22},"primary","material-symbols:info-outline","_blank","https:\u002F\u002Fgithub.com\u002Fnvm-sh\u002Fnvm\u002Fblob\u002Fmaster\u002FREADME.md",[13,24,25,26,30,31,33],{},"点击访问",[27,28,29],"code",{},"nvm","官网，阅读",[27,32,29],{},"使用文档",[35,36,38],"h2",{"id":37},"_1-安装nvm软件","1. 安装NVM软件",[13,40,41,42,49,50,52,53,55],{},"访问",[43,44,48],"a",{"href":45,"rel":46},"https:\u002F\u002Fgithub.com\u002Fnvm-sh\u002Fnvm",[47],"nofollow","NVM","的源码仓库，可以查看最新版本的",[27,51,29],{},"包，在不同的系统上安装",[27,54,29],{},"方式存在差异，但基本都可以通过源代码包和第三方快捷方式进行安装。",[57,58,59,69],"warning",{},[13,60,61,65,66],{},[62,63,64],"strong",{},"注意："," ",[67,68],"br",{},[70,71,72,83],"ol",{},[73,74,75,76,78,79,82],"li",{},"无论什么系统，通过",[27,77,29],{},"安装node.js之前，都需要卸载现已安装好的",[27,80,81],{},"Node.js","，避免发生安装冲突和错误问题。",[73,84,85,86,89,90,92,93,96,97,99,100,102,103,106,107,109],{},"对于",[27,87,88],{},"Linux","系统，不同版本的",[27,91,81],{},"对",[27,94,95],{},"gcc","版本有要求，安装",[27,98,81],{},"对应的",[27,101,95],{},"版本，Node.js才能安装成功。建议使用最新版本的",[27,104,105],{},"linux","镜像系统(gcc版本比较高，满足高版本Node.js安装需求)，否则需要手动升级系统",[27,108,95],{},"版本，非常麻烦。",[111,112,114],"h3",{"id":113},"_11-windows安装nvm","1.1 Windows安装NVM",[13,116,117,118,121,122,125,126,129,130,132,133,136],{},"windows系统可以通过",[27,119,120],{},"nvm-windows​","进行安装，",[27,123,124],{},"nvm-windows","是一个",[27,127,128],{},".exe","的安装包，在",[27,131,29],{},"源码包的基础上编译成了可执行文件，便于在",[27,134,135],{},"Windows","环境下安装。",[13,138,139],{},[62,140,141],{},"1. 下载nvm-windows",[13,143,41,144,148],{},[43,145,124],{"href":146,"rel":147},"https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Freleases",[47],"官方仓库，下载最新版本的安装包。",[150,151,152,155],"ul",{},[73,153,154],{},"稳定版：nvm-setup.exe",[73,156,157],{},"便携版：nvm-noinstall.zip",[13,159,160],{},"稳定版是可执行文件，可以直接点击安装，推荐使用稳定版安装。便携版为免安装的文件包，之间解压到磁盘上即可。",[162,163,164],"tip",{},[13,165,166,167,169],{},"二者区别：稳定版安装后，会自动添加环境变量，软件安装完毕就可以直接使用",[27,168,29],{},",便携版需要手动配置环境变量，才能使用。",[13,171,172],{},[62,173,174],{},"2. 运行安装程序",[70,176,177,180,186,192],{},[73,178,179],{},"点击运行稳定版，勾选许可协议，下一步.",[73,181,182,183,185],{},"设置",[27,184,29],{},"安装路径，可自定义安装路径 .",[73,187,188,189,191],{},"设置 ",[27,190,81],{}," 的安装路径.",[73,193,194],{},"安装完成.",[13,196,197],{},[62,198,199],{},"3.验证安装",[13,201,202],{},"打开新的命令提示符（CMD）或 PowerShell，运行：",[204,205,210],"pre",{"className":206,"code":207,"language":208,"meta":209,"style":209},"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","nvm -v\n","shell","",[27,211,212],{"__ignoreMap":209},[213,214,217,220],"span",{"class":215,"line":216},"line",1,[213,218,29],{"class":219},"sBMFI",[213,221,223],{"class":222},"sfazB"," -v\n",[13,225,226],{},"如果显示版本号（如 1.1.9），说明安装成功。",[111,228,230],{"id":229},"_12-linux安装nvm","1.2 Linux安装NVM",[13,232,233,234,236,237,240,241,244],{},"Linux系统上安装",[27,235,29],{},"，可以通过",[27,238,239],{},"nvm-sh","脚本和",[27,242,243],{},"源码包","2种方式进行安装。",[13,246,247],{},[62,248,249],{},"1. 使用脚本安装",[150,251,252],{},[73,253,254],{},"打开终端，运行以下命令：",[204,256,260],{"className":257,"code":258,"language":259,"meta":209,"style":209},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl -o- https:\u002F\u002Fraw.githubusercontent.com\u002Fnvm-sh\u002Fnvm\u002Fv0.40.3\u002Finstall.sh | bash\n","ts",[27,261,262],{"__ignoreMap":209},[213,263,264,268,272,275,277,280,283],{"class":215,"line":216},[213,265,267],{"class":266},"sTEyZ","curl ",[213,269,271],{"class":270},"sMK4o","-",[213,273,274],{"class":266},"o",[213,276,271],{"class":270},[213,278,279],{"class":219}," https",[213,281,282],{"class":270},":",[213,284,286],{"class":285},"sHwdD","\u002F\u002Fraw.githubusercontent.com\u002Fnvm-sh\u002Fnvm\u002Fv0.40.3\u002Finstall.sh | bash\n",[150,288,289],{},[73,290,291],{},"或者使用 wget：",[204,293,295],{"className":257,"code":294,"language":259,"meta":209,"style":209},"wget -qO- https:\u002F\u002Fraw.githubusercontent.com\u002Fnvm-sh\u002Fnvm\u002Fv0.40.3\u002Finstall.sh | bash\n",[27,296,297],{"__ignoreMap":209},[213,298,299,302,304,307,309,311,313],{"class":215,"line":216},[213,300,301],{"class":266},"wget ",[213,303,271],{"class":270},[213,305,306],{"class":266},"qO",[213,308,271],{"class":270},[213,310,279],{"class":219},[213,312,282],{"class":270},[213,314,286],{"class":285},[13,316,317],{},[62,318,319],{},"2. 配置环境变量",[13,321,322],{},"安装完成后，将以下内容添加到你的 shell 配置文件（ ~\u002F.bashrc、 ~\u002F.zshrc 或 ~\u002F.profile）：",[204,324,326],{"className":257,"code":325,"language":259,"meta":209,"style":209},"export NVM_DIR=\"$HOME\u002F.nvm\"\n[ -s \"$NVM_DIR\u002Fnvm.sh\" ] && \\. \"$NVM_DIR\u002Fnvm.sh\"  # 加载 nvm\n[ -s \"$NVM_DIR\u002Fbash_completion\" ] && \\. \"$NVM_DIR\u002Fbash_completion\"  # 加载自动补全\n",[27,327,328,349,389],{"__ignoreMap":209},[213,329,330,334,337,340,343,346],{"class":215,"line":216},[213,331,333],{"class":332},"spNyl","export",[213,335,336],{"class":266}," NVM_DIR",[213,338,339],{"class":270},"=",[213,341,342],{"class":270},"\"",[213,344,345],{"class":222},"$HOME\u002F.nvm",[213,347,348],{"class":270},"\"\n",[213,350,352,355,357,360,362,365,367,370,373,376,379,382,384,386],{"class":215,"line":351},2,[213,353,354],{"class":266},"[ ",[213,356,271],{"class":270},[213,358,359],{"class":266},"s ",[213,361,342],{"class":270},[213,363,364],{"class":222},"$NVM_DIR\u002Fnvm.sh",[213,366,342],{"class":270},[213,368,369],{"class":266}," ] ",[213,371,372],{"class":270},"&&",[213,374,375],{"class":266}," \\",[213,377,378],{"class":270},".",[213,380,381],{"class":270}," \"",[213,383,364],{"class":222},[213,385,342],{"class":270},[213,387,388],{"class":266},"  # 加载 nvm\n",[213,390,392,394,396,398,400,403,405,407,409,411,413,415,417,419],{"class":215,"line":391},3,[213,393,354],{"class":266},[213,395,271],{"class":270},[213,397,359],{"class":266},[213,399,342],{"class":270},[213,401,402],{"class":222},"$NVM_DIR\u002Fbash_completion",[213,404,342],{"class":270},[213,406,369],{"class":266},[213,408,372],{"class":270},[213,410,375],{"class":266},[213,412,378],{"class":270},[213,414,381],{"class":270},[213,416,402],{"class":222},[213,418,342],{"class":270},[213,420,421],{"class":266},"  # 加载自动补全\n",[423,424,425],"note",{},[13,426,427,428,431],{},"注意: 通过脚本安装，脚本执行完，默认在",[27,429,430],{},"~\u002F.bashrc","中加入了上面的环境变量配置，只需要重新加载环境变量文件即可。",[13,433,434],{},[62,435,436],{},"3. 重新加载环境变量",[204,438,440],{"className":257,"code":439,"language":259,"meta":209,"style":209},"source ~\u002F.bashrc\n",[27,441,442],{"__ignoreMap":209},[213,443,444,447,450],{"class":215,"line":216},[213,445,446],{"class":266},"source ",[213,448,449],{"class":270},"~\u002F.",[213,451,452],{"class":266},"bashrc\n",[13,454,455],{},[62,456,457],{},"4. 验证安装",[204,459,460],{"className":257,"code":207,"language":259,"meta":209,"style":209},[27,461,462],{"__ignoreMap":209},[213,463,464,467,469],{"class":215,"line":216},[213,465,466],{"class":266},"nvm ",[213,468,271],{"class":270},[213,470,471],{"class":266},"v\n",[13,473,474],{},"如果显示版本号（如：0.40.3)，说明安装成功。",[35,476,478],{"id":477},"_2-nvm管理nodejs","2. Nvm管理Node.js",[13,480,481,482,484,485,487],{},"无论Window系统，还是Linux系统，",[27,483,29],{},"安装成功后，安装和管理",[27,486,81],{},"的命令基本一致。",[111,489,491],{"id":490},"_21-基本命令","2.1  基本命令",[13,493,494],{},[62,495,496],{},"1. 安装 Node.js 版本",[204,498,500],{"className":257,"code":499,"language":259,"meta":209,"style":209},"# 安装最新版本的node，\"node\" 是最新版本的别名\nnvm install node \n# 安装最新的 LTS 版本\nnvm install --lts \n# 安装最新 18.x 版本\nnvm install 18 \n# 安装指定版本     \nnvm install 16.14.0  \n# 设置别名为my_alias，别名不能包含空格或者斜杠\nnvm alias my_alias v14.4.0\n",[27,501,502,517,522,527,539,550,562,568,584,590],{"__ignoreMap":209},[213,503,504,507,509,512,514],{"class":215,"line":216},[213,505,506],{"class":266},"# 安装最新版本的node，",[213,508,342],{"class":270},[213,510,511],{"class":222},"node",[213,513,342],{"class":270},[213,515,516],{"class":266}," 是最新版本的别名\n",[213,518,519],{"class":215,"line":351},[213,520,521],{"class":266},"nvm install node \n",[213,523,524],{"class":215,"line":391},[213,525,526],{"class":266},"# 安装最新的 LTS 版本\n",[213,528,530,533,536],{"class":215,"line":529},4,[213,531,532],{"class":266},"nvm install ",[213,534,535],{"class":270},"--",[213,537,538],{"class":266},"lts \n",[213,540,542,545,547],{"class":215,"line":541},5,[213,543,544],{"class":266},"# 安装最新 18",[213,546,378],{"class":270},[213,548,549],{"class":266},"x 版本\n",[213,551,553,555,559],{"class":215,"line":552},6,[213,554,532],{"class":266},[213,556,558],{"class":557},"sbssI","18",[213,560,561],{"class":266}," \n",[213,563,565],{"class":215,"line":564},7,[213,566,567],{"class":266},"# 安装指定版本     \n",[213,569,571,573,576,578,581],{"class":215,"line":570},8,[213,572,532],{"class":266},[213,574,575],{"class":557},"16.14",[213,577,378],{"class":270},[213,579,580],{"class":557},"0",[213,582,583],{"class":266},"  \n",[213,585,587],{"class":215,"line":586},9,[213,588,589],{"class":266},"# 设置别名为my_alias，别名不能包含空格或者斜杠\n",[213,591,593,596,598],{"class":215,"line":592},10,[213,594,595],{"class":266},"nvm alias my_alias v14",[213,597,378],{"class":270},[213,599,600],{"class":557},"4.0\n",[13,602,603],{},[62,604,605],{},"2. 查看已安装版本",[204,607,609],{"className":257,"code":608,"language":259,"meta":209,"style":209},"nvm ls\n",[27,610,611],{"__ignoreMap":209},[213,612,613],{"class":215,"line":216},[213,614,608],{"class":266},[13,616,617],{},"显示结果为：",[204,619,621],{"className":257,"code":620,"language":259,"meta":209,"style":209},"    v16.14.0\n    v18.12.1\n->  v20.7.0\n",[27,622,623,633,643],{"__ignoreMap":209},[213,624,625,628,630],{"class":215,"line":216},[213,626,627],{"class":266},"    v16",[213,629,378],{"class":270},[213,631,632],{"class":557},"14.0\n",[213,634,635,638,640],{"class":215,"line":351},[213,636,637],{"class":266},"    v18",[213,639,378],{"class":270},[213,641,642],{"class":557},"12.1\n",[213,644,645,648,651,653],{"class":215,"line":391},[213,646,647],{"class":270},"->",[213,649,650],{"class":266},"  v20",[213,652,378],{"class":270},[213,654,655],{"class":557},"7.0\n",[13,657,658,659,661],{},"箭头指向为当前使用的",[27,660,81],{},"版本",[13,663,664],{},[62,665,666],{},"3. 切换Node.js版本",[204,668,670],{"className":257,"code":669,"language":259,"meta":209,"style":209},"# 切换到 18.x\nnvm use 18\n# 切换到指定版本      \nnvm use 16.14.0  \n",[27,671,672,682,690,695],{"__ignoreMap":209},[213,673,674,677,679],{"class":215,"line":216},[213,675,676],{"class":266},"# 切换到 18",[213,678,378],{"class":270},[213,680,681],{"class":266},"x\n",[213,683,684,687],{"class":215,"line":351},[213,685,686],{"class":266},"nvm use ",[213,688,689],{"class":557},"18\n",[213,691,692],{"class":215,"line":391},[213,693,694],{"class":266},"# 切换到指定版本      \n",[213,696,697,699,701,703],{"class":215,"line":529},[213,698,686],{"class":266},[213,700,575],{"class":557},[213,702,378],{"class":270},[213,704,705],{"class":557},"0\n",[13,707,708],{},[62,709,710],{},"4. 卸载Node.js版本",[204,712,714],{"className":257,"code":713,"language":259,"meta":209,"style":209},"nvm uninstall 16.14.0\n",[27,715,716],{"__ignoreMap":209},[213,717,718,721,723,725],{"class":215,"line":216},[213,719,720],{"class":266},"nvm uninstall ",[213,722,575],{"class":557},[213,724,378],{"class":270},[213,726,705],{"class":557},[111,728,730],{"id":729},"_22-高阶用法","2.2 高阶用法",[13,732,733],{},[62,734,735],{},"1. 设置默认版本",[204,737,739],{"className":257,"code":738,"language":259,"meta":209,"style":209},"nvm alias default 18\n",[27,740,741],{"__ignoreMap":209},[213,742,743,746,750],{"class":215,"line":216},[213,744,745],{"class":266},"nvm alias ",[213,747,749],{"class":748},"s7zQu","default",[213,751,752],{"class":557}," 18\n",[13,754,755,756,758,759,761],{},"第一个安装的版本会被自动设置为默认版本，新打开的终端",[27,757,208],{},"都会使用默认的",[27,760,81],{},"版本。",[13,763,764],{},[62,765,766],{},"2. 查看远程可用版本",[204,768,770],{"className":257,"code":769,"language":259,"meta":209,"style":209},"nvm ls-remote\n",[27,771,772],{"__ignoreMap":209},[213,773,774,777,779],{"class":215,"line":216},[213,775,776],{"class":266},"nvm ls",[213,778,271],{"class":270},[213,780,781],{"class":266},"remote\n",[13,783,784],{},[62,785,786],{},"3. 临时选择版本，并输出版本号，该命令不会永久切换版本，仅临时运行一次",[204,788,790],{"className":257,"code":789,"language":259,"meta":209,"style":209},"# 临时选择最新node版本，并输出版本号\nnvm run node --version\n# 临时切换到 Node.js 18.12.1 版本，并输出该版本的 Node.js 号\nnvm run 18.12.1 node --version\n# 临时切换到 Node.js 18.12.1 版本，并输出该版本的 Node.js 号\nnvm exec 18.12.1 node --version\n",[27,791,792,797,807,833,851,871],{"__ignoreMap":209},[213,793,794],{"class":215,"line":216},[213,795,796],{"class":266},"# 临时选择最新node版本，并输出版本号\n",[213,798,799,802,804],{"class":215,"line":351},[213,800,801],{"class":266},"nvm run node ",[213,803,535],{"class":270},[213,805,806],{"class":266},"version\n",[213,808,809,812,814,817,820,822,825,828,830],{"class":215,"line":391},[213,810,811],{"class":266},"# 临时切换到 Node",[213,813,378],{"class":270},[213,815,816],{"class":266},"js ",[213,818,819],{"class":557},"18.12",[213,821,378],{"class":270},[213,823,824],{"class":557},"1",[213,826,827],{"class":266}," 版本，并输出该版本的 Node",[213,829,378],{"class":270},[213,831,832],{"class":266},"js 号\n",[213,834,835,838,840,842,844,847,849],{"class":215,"line":529},[213,836,837],{"class":266},"nvm run ",[213,839,819],{"class":557},[213,841,378],{"class":270},[213,843,824],{"class":557},[213,845,846],{"class":266}," node ",[213,848,535],{"class":270},[213,850,806],{"class":266},[213,852,853,855,857,859,861,863,865,867,869],{"class":215,"line":541},[213,854,811],{"class":266},[213,856,378],{"class":270},[213,858,816],{"class":266},[213,860,819],{"class":557},[213,862,378],{"class":270},[213,864,824],{"class":557},[213,866,827],{"class":266},[213,868,378],{"class":270},[213,870,832],{"class":266},[213,872,873,876,878,880,882,884,886],{"class":215,"line":552},[213,874,875],{"class":266},"nvm exec ",[213,877,819],{"class":557},[213,879,378],{"class":270},[213,881,824],{"class":557},[213,883,846],{"class":266},[213,885,535],{"class":270},[213,887,806],{"class":266},[13,889,890],{},[62,891,892],{},"4. 查看已安装Node.js的安装路径",[204,894,896],{"className":257,"code":895,"language":259,"meta":209,"style":209},"nvm which 12.22\n",[27,897,898],{"__ignoreMap":209},[213,899,900,903],{"class":215,"line":216},[213,901,902],{"class":266},"nvm which ",[213,904,905],{"class":557},"12.22\n",[35,907,909],{"id":908},"_3-常见问题","3. 常见问题",[111,911,913],{"id":912},"_31-windows-常见问题","3.1. Windows 常见问题",[13,915,916],{},[62,917,918],{},"1. nvm 命令无效​",[150,920,921,924,927],{},[73,922,923],{},"确保以管理员身份运行命令提示符。",[73,925,926],{},"检查环境变量是否设置正确。",[73,928,929],{},"关闭终端重新打开或者重启电脑。",[13,931,932],{},[62,933,934],{},"2. 安装失败",[150,936,937,940],{},[73,938,939],{},"安装路径不能有中文和空格。",[73,941,942],{},"关闭杀毒软件。",[111,944,946],{"id":945},"_32-linux-常见问题","3.2. Linux 常见问题",[13,948,949],{},[62,950,951],{},"1. nvm命令找不到",[150,953,954,957],{},[73,955,956],{},"nvm环境变量是否配置成功。",[73,958,959],{},"环境变量是否重新加载。",[13,961,962,963,966,967,970,971],{},"运行",[27,964,965],{"color":19}," source ~\u002F.bashrc"," 或",[27,968,969],{"color":19}," source ~\u002F.zshrc","  或者",[27,972,973],{"color":19},"source ~\u002F.profile",[13,975,976],{},[62,977,978],{},"2. Node.js安装速度慢",[13,980,981,982,984,985,987],{},"在",[27,983,88],{},"系统环境变量中配置",[27,986,81],{},"阿里云镜像地址",[204,989,993],{"className":990,"code":991,"language":992,"meta":209,"style":209},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# 编辑环境变量文件\nvi ~\u002F.bashrc\n# 最后一行输入\nexport NVM_NODEJS_ORG_MIRROR=https:\u002F\u002Fnpmmirror.com\u002Fmirrors\u002Fnode\n# 保存退出\n:wq!\n# 重新加载环境变量\nsource  ~\u002F.bashrc\n","bash",[27,994,995,1000,1008,1013,1025,1030,1035,1040],{"__ignoreMap":209},[213,996,997],{"class":215,"line":216},[213,998,999],{"class":285},"# 编辑环境变量文件\n",[213,1001,1002,1005],{"class":215,"line":351},[213,1003,1004],{"class":219},"vi",[213,1006,1007],{"class":222}," ~\u002F.bashrc\n",[213,1009,1010],{"class":215,"line":391},[213,1011,1012],{"class":285},"# 最后一行输入\n",[213,1014,1015,1017,1020,1022],{"class":215,"line":529},[213,1016,333],{"class":332},[213,1018,1019],{"class":266}," NVM_NODEJS_ORG_MIRROR",[213,1021,339],{"class":270},[213,1023,1024],{"class":266},"https:\u002F\u002Fnpmmirror.com\u002Fmirrors\u002Fnode\n",[213,1026,1027],{"class":215,"line":541},[213,1028,1029],{"class":285},"# 保存退出\n",[213,1031,1032],{"class":215,"line":552},[213,1033,1034],{"class":219},":wq!\n",[213,1036,1037],{"class":215,"line":564},[213,1038,1039],{"class":285},"# 重新加载环境变量\n",[213,1041,1042,1046],{"class":215,"line":570},[213,1043,1045],{"class":1044},"s2Zo4","source",[213,1047,1048],{"class":222},"  ~\u002F.bashrc\n",[13,1050,981,1051,1054,1055,1057,1058,1060,1061,1063,1064,1067],{},[27,1052,1053],{},"windows","系统中配置",[27,1056,48],{},"下载",[27,1059,81],{},"使用的阿里云镜像地址，在",[27,1062,29],{},"安装目录下的",[27,1065,1066],{},"settings.txt","文件中添加以下内容：",[204,1069,1071],{"className":990,"code":1070,"language":992,"meta":209,"style":209},"node_mirror: https:\u002F\u002Fnpmmirror.com\u002Fmirrors\u002Fnode\n\n",[27,1072,1073],{"__ignoreMap":209},[213,1074,1075,1078],{"class":215,"line":216},[213,1076,1077],{"class":219},"node_mirror:",[213,1079,1080],{"class":222}," https:\u002F\u002Fnpmmirror.com\u002Fmirrors\u002Fnode\n",[1082,1083,1084],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}",{"title":209,"searchDepth":391,"depth":391,"links":1086},[1087,1091,1095],{"id":37,"depth":351,"text":38,"children":1088},[1089,1090],{"id":113,"depth":391,"text":114},{"id":229,"depth":391,"text":230},{"id":477,"depth":351,"text":478,"children":1092},[1093,1094],{"id":490,"depth":391,"text":491},{"id":729,"depth":391,"text":730},{"id":908,"depth":351,"text":909,"children":1096},[1097,1098],{"id":912,"depth":391,"text":913},{"id":945,"depth":391,"text":946},{"name":81,"symbol":511,"icon":1100,"id":592},"material-icon-theme:nodejs-alt","2025-06-16 21:33:26","在Windows和Linux系统上，通过NVM版本管理器安装和管理不同版本的Node.js，易于快速实现不同版本的Nose.js安装和切换，满足不同应用场景的需求，同时也降低运维成本。",{"type":10,"value":1104},[1105],[13,1106,15],{},"md",false,true,"windows,linux,nvm,node.js",{},"\u002Fblog\u002Fwindowslinuxnvmnode.js","---\ntitle: Windows和Linux系统上NVM安装多个版本的Node.js\ndescription: 在Windows和Linux系统上，通过NVM版本管理器安装和管理不同版本的Node.js，易于快速实现不同版本的Nose.js安装和切换，满足不同应用场景的需求，同时也降低运维成本。\nkeywords: windows,linux,nvm,node.js\narticleId: 20250616213326\ncreateDate: \"2025-06-16 21:33:26\"\nupdateDate: \"2026-03-12 10:44:16\"\narticleThumb: https:\u002F\u002Fgcore.jsdelivr.net\u002Fgh\u002FAnyFork\u002FResource\u002Fimages\u002F20260327205225806.webp\ntagIds: \n    - 10\ncategoryId: 10\nisTop: false\nisRecommend: true\nisHot: true\nisHidden: false\nnavigation: true\n---\nNVM（Node Version Manager）是专为Node.js设计的版本管理工具，用于安装和管理多个不同版本的Node.js，允许在同一台机器上安装、切换和使用多个不同版本的Node.js，适用于开发者处理多个项目需要不同Node版本的需求。本文从Windows和Linux2个不同的操作系统入手，简单记录NVM安装不同Node.js的使用步骤。\n\u003C!--more-->\n\n::callout{icon=\"material-symbols:info-outline\" color=\"primary\" to=\"https:\u002F\u002Fgithub.com\u002Fnvm-sh\u002Fnvm\u002Fblob\u002Fmaster\u002FREADME.md\" target=\"_blank\"}\n点击访问`nvm`官网，阅读`nvm`使用文档\n::\n\n## 1. 安装NVM软件\n访问[NVM](https:\u002F\u002Fgithub.com\u002Fnvm-sh\u002Fnvm)的源码仓库，可以查看最新版本的`nvm`包，在不同的系统上安装`nvm`方式存在差异，但基本都可以通过源代码包和第三方快捷方式进行安装。\n::warning\n**注意：** \u003C\u002Fbr>\n1. 无论什么系统，通过`nvm`安装node.js之前，都需要卸载现已安装好的`Node.js`，避免发生安装冲突和错误问题。\n2. 对于`Linux`系统，不同版本的`Node.js`对`gcc`版本有要求，安装`Node.js`对应的`gcc`版本，Node.js才能安装成功。建议使用最新版本的`linux`镜像系统(gcc版本比较高，满足高版本Node.js安装需求)，否则需要手动升级系统`gcc`版本，非常麻烦。\n::\n\n### 1.1 Windows安装NVM\nwindows系统可以通过`nvm-windows​`进行安装，`nvm-windows`是一个`.exe`的安装包，在`nvm`源码包的基础上编译成了可执行文件，便于在`Windows`环境下安装。\n\n**1. 下载nvm-windows**\n\n访问[nvm-windows](https:\u002F\u002Fgithub.com\u002Fcoreybutler\u002Fnvm-windows\u002Freleases)官方仓库，下载最新版本的安装包。\n- 稳定版：nvm-setup.exe\n- 便携版：nvm-noinstall.zip\n\n稳定版是可执行文件，可以直接点击安装，推荐使用稳定版安装。便携版为免安装的文件包，之间解压到磁盘上即可。\n::tip\n二者区别：稳定版安装后，会自动添加环境变量，软件安装完毕就可以直接使用`nvm`,便携版需要手动配置环境变量，才能使用。\n::\n**2. 运行安装程序**\n1. 点击运行稳定版，勾选许可协议，下一步.\n2. 设置`nvm`安装路径，可自定义安装路径 .\n3. 设置 `Node.js` 的安装路径.\n4. 安装完成.\n\n**3.验证安装**\n\n打开新的命令提示符（CMD）或 PowerShell，运行：\n```shell\nnvm -v\n```\n如果显示版本号（如 1.1.9），说明安装成功。\n### 1.2 Linux安装NVM\nLinux系统上安装`nvm`，可以通过`nvm-sh`脚本和`源码包`2种方式进行安装。\n\n**1. 使用脚本安装**\n- 打开终端，运行以下命令：\n```ts\ncurl -o- https:\u002F\u002Fraw.githubusercontent.com\u002Fnvm-sh\u002Fnvm\u002Fv0.40.3\u002Finstall.sh | bash\n```\n- 或者使用 wget：\n```ts\nwget -qO- https:\u002F\u002Fraw.githubusercontent.com\u002Fnvm-sh\u002Fnvm\u002Fv0.40.3\u002Finstall.sh | bash\n```\n**2. 配置环境变量**\n\n安装完成后，将以下内容添加到你的 shell 配置文件（ ~\u002F.bashrc、 ~\u002F.zshrc 或 ~\u002F.profile）：\n```ts\nexport NVM_DIR=\"$HOME\u002F.nvm\"\n[ -s \"$NVM_DIR\u002Fnvm.sh\" ] && \\. \"$NVM_DIR\u002Fnvm.sh\"  # 加载 nvm\n[ -s \"$NVM_DIR\u002Fbash_completion\" ] && \\. \"$NVM_DIR\u002Fbash_completion\"  # 加载自动补全\n```\n::note\n注意: 通过脚本安装，脚本执行完，默认在`~\u002F.bashrc`中加入了上面的环境变量配置，只需要重新加载环境变量文件即可。\n::\n**3. 重新加载环境变量**\n```ts\nsource ~\u002F.bashrc\n```\n**4. 验证安装**\n```ts\nnvm -v\n```\n如果显示版本号（如：0.40.3)，说明安装成功。\n## 2. Nvm管理Node.js\n无论Window系统，还是Linux系统，`nvm`安装成功后，安装和管理`Node.js`的命令基本一致。\n### 2.1  基本命令\n**1. 安装 Node.js 版本**\n```ts\n# 安装最新版本的node，\"node\" 是最新版本的别名\nnvm install node \n# 安装最新的 LTS 版本\nnvm install --lts \n# 安装最新 18.x 版本\nnvm install 18 \n# 安装指定版本     \nnvm install 16.14.0  \n# 设置别名为my_alias，别名不能包含空格或者斜杠\nnvm alias my_alias v14.4.0\n```\n**2. 查看已安装版本**\n```ts\nnvm ls\n```\n显示结果为：\n```ts\n    v16.14.0\n    v18.12.1\n->  v20.7.0\n```\n箭头指向为当前使用的`Node.js`版本\n\n**3. 切换Node.js版本**\n```ts\n# 切换到 18.x\nnvm use 18\n# 切换到指定版本      \nnvm use 16.14.0  \n```\n**4. 卸载Node.js版本**\n```ts\nnvm uninstall 16.14.0\n```\n### 2.2 高阶用法\n\n**1. 设置默认版本**\n```ts\nnvm alias default 18\n```\n第一个安装的版本会被自动设置为默认版本，新打开的终端`shell`都会使用默认的`Node.js`版本。\n\n**2. 查看远程可用版本**\n```ts\nnvm ls-remote\n```\n**3. 临时选择版本，并输出版本号，该命令不会永久切换版本，仅临时运行一次**\n```ts\n# 临时选择最新node版本，并输出版本号\nnvm run node --version\n# 临时切换到 Node.js 18.12.1 版本，并输出该版本的 Node.js 号\nnvm run 18.12.1 node --version\n# 临时切换到 Node.js 18.12.1 版本，并输出该版本的 Node.js 号\nnvm exec 18.12.1 node --version\n```\n**4. 查看已安装Node.js的安装路径**\n```ts\nnvm which 12.22\n```\n## 3. 常见问题\n### 3.1. Windows 常见问题\n**1. nvm 命令无效​**\n- 确保以管理员身份运行命令提示符。\n- 检查环境变量是否设置正确。\n- 关闭终端重新打开或者重启电脑。\n\n\n**2. 安装失败**\n- 安装路径不能有中文和空格。\n- 关闭杀毒软件。\n\n\n### 3.2. Linux 常见问题\n**1. nvm命令找不到**\n- nvm环境变量是否配置成功。\n- 环境变量是否重新加载。\n\n运行` source ~\u002F.bashrc`{color=primary} 或` source ~\u002F.zshrc`{color=primary}  或者`source ~\u002F.profile`{color=primary} \n\n\n**2. Node.js安装速度慢**\n\n\n在`Linux`系统环境变量中配置`Node.js`阿里云镜像地址\n```bash\n# 编辑环境变量文件\nvi ~\u002F.bashrc\n# 最后一行输入\nexport NVM_NODEJS_ORG_MIRROR=https:\u002F\u002Fnpmmirror.com\u002Fmirrors\u002Fnode\n# 保存退出\n:wq!\n# 重新加载环境变量\nsource  ~\u002F.bashrc\n```\n在`windows`系统中配置`NVM`下载`Node.js`使用的阿里云镜像地址，在`nvm`安装目录下的`settings.txt`文件中添加以下内容：\n```bash\nnode_mirror: https:\u002F\u002Fnpmmirror.com\u002Fmirrors\u002Fnode\n\n```",{"title":6,"description":1102},{"loc":1112},"blog\u002F7.Windows和Linux系统上NVM安装多个版本的Node.js",[592],[1119],{"name":1120,"icon":1121,"symbol":29,"id":592},"Nvm","arcticons:nvm","2026-03-12 10:44:16",1257,"KivZ3wPVnKHvjcJXrmjpAH26DuVB4mMTNMUJkI7I_vc",1778143539077]