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