MacOS 上安裝和管理 Node.js

在 macOS 上安裝和管理 Node.js,使用 Node Version Manager (NVM) 是一種簡便且高效的方法。NVM 允許您輕松地安裝、切換和管理不同版本的 Node.js。本指南將帶您一步步完成這一過程。

步驟 1:安裝 Node Version Manager (NVM)

首先,我們需要安裝 NVM。打開終端并執行以下命令來下載并安裝 NVM

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

這個命令會下載并運行一個安裝腳本,將 NVM 安裝到您的系統中。

步驟 2:配置 NVM 使其在終端中生效

為了確保每次打開終端時 NVM 都能正常使用,我們需要配置終端的啟動腳本。以下是詳細步驟:

2.1 修改配置文件

使用以下命令打開您的配置文件(根據您使用的 shell 不同,可以是 ~/.bash_profile~/.bashrc~/.zshrc):

vi ~/.bash_profile
2.2 添加 NVM 初始化腳本

在打開的文件末尾添加以下內容:

export NVM_DIR="$HOME/.nvm" [ -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

這段腳本會在每次打開終端時自動加載 NVM。

2.3 使配置生效

保存并關閉文件,然后運行以下命令使配置立即生效:

source ~/.bash_profile

步驟 3:驗證 NVM 安裝

要驗證 NVM 是否成功安裝并配置正確,運行以下命令:

nvm --version

如果安裝成功,您會看到 NVM 的版本號輸出。

步驟 4:安裝最新的 LTS 版本的 Node.js

現在,您可以使用 NVM 安裝最新的長期支持版本(LTS)的 Node.js。運行以下命令:

nvm install --lts

這將會下載并安裝最新的 LTS 版本。

步驟 5:切換到最新的 LTS 版本

安裝完成后,使用以下命令切換到剛剛安裝的 LTS 版本:

nvm use --lts

步驟 6:設置默認的 Node.js 版本

為了確保每次打開終端時都使用最新的 LTS 版本,可以將其設置為默認版本:

nvm alias default lts/*

步驟 7:驗證 Node.js 版本

最后,驗證 Node.js 是否成功安裝并切換到最新的 LTS 版本,運行以下命令:

node -v

如果一切正常,您會看到最新的 LTS 版本的 Node.js 版本號輸出。

總結

通過上述步驟,您已經成功在 macOS 上安裝并配置了 NVM,并使用它來管理 Node.js 的不同版本。這不僅使得 Node.js 版本的切換和管理更加方便,也確保了您在開發不同項目時可以輕松地使用適合的 Node.js 版本。希望這篇指南對您有所幫助!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/35229.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/35229.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/35229.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

電巢科技CIOE中國光博會:激光雷達技術應用研討會圓滿落幕!

2024年6月20日,由CIOE中國光博會與電巢科技聯合主辦的“激光雷達技術應用”線上研討會成功舉行。本次線上研討會是CIOE中國光博會與電巢科技首次聯合主辦的論壇,旨在借助雙方自身資源優勢,為行業發展提供可靠的交流平臺。接下來,C…

Android焦點機制結合WMS

文章前提: 了解WMS基本作用了解window的概念,phoneWindow,rootViewImpl了解view的事件分發 開始: 講三件事情: window的創建,更新焦點的更新事件的分發 Window的創建,更新: wi…

基于 Redis 實現秒殺資格判斷,提升并發性能

在互聯網電商平臺上,秒殺活動往往會吸引大量用戶同時搶購,如何高效地處理高并發請求,保證用戶體驗,是一個重要的技術挑戰。本文將介紹如何基于 Redis 實現秒殺資格的判斷,提高并發性能。 基本思路 秒殺活動的核心流程…

AI 編程還有前景嘛?

自從各個大廠相繼出品 AI 編程助手之后,AI 在編程領域的發展,可謂是幾無寸進。 相比于 AI 在多模態領域火熱,AI 在編程領域的熱度已經完全下來了。 阿七在公眾號搜索了關鍵詞「AI編程」,發現搜索出來的公眾號寥寥無幾&#xff0…

LLM生成模型在生物蛋白質應用:ESM3

參考: https://github.com/evolutionaryscale/esm 通過GPT模型原理,輸入蛋白質序列等模態輸出預測的蛋白質序列及結構 使用 參考:https://colab.research.google.com/github/evolutionaryscale/esm/blob/main/examples/generate.ipynb#sc…

(六)使用統計學方法進行變量有效性測試(43道選擇題)

本文整理了使用統計學方法進行變量有效性測試相關的練習題,共43道,適用于想鞏固理論基礎的同學。來源:如荷學數據科學題庫(CDA二級-第7章)。 1) 2) 3) 4) 5)…

【無人機三維路徑規劃】基于樹木生長算法TGA實現復雜城市地形下無人機避障三維航跡規劃附Matlab代碼

% 定義無人機起始位置和目標位置 start_point [0, 0, 0]; % 起始位置 [x, y, z] target_point [100, 100, 100]; % 目標位置 [x, y, z] % 定義城市地形和障礙物信息 city_map imread(‘city_map.png’); % 城市地形圖像 obstacles [ 20, 30, 10; % 障礙物1位置 [x, y, z] …

三分之一的違規行為未被發現

Gigamon 調查顯示,隨著漏洞的針對性越來越強、越來越復雜,企業在檢測漏洞方面也面臨越來越大的困難,超過三分之一的企業表示,現有的安全工具無法在漏洞發生時檢測到它們。 隨著混合云環境變得越來越復雜,以及惡意行為…

Java 語言特定指南

Java 語言特定指南 本 Java 入門指南將教您如何使用 Docker 創建一個容器化的 Spring Boot 應用程序。在本模塊中,您將學習如何: 使用 Maven 容器化并運行一個 Spring Boot 應用程序設置本地開發環境以將數據庫連接到容器、配置調試器,并使…

篩斗數據:引領未來,以技術創新推動在線推廣新紀元

在數字化浪潮的推動下,企業在線推廣已成為市場拓展的關鍵手段。然而,在海量信息中精準定位目標用戶,有效提升轉化率,卻是一大挑戰。篩斗數據,作為一家專注于數據提取與分析的技術公司,正以其獨特的技術優勢…

云計算基礎知識

前言: 隨著ICT技術的高速發展,企業架構對計算、存儲、網絡資源的需求更高,急需一種新的架構來承載業務,以獲得持續,高速,高效的發展,云計算應運而生。 云計算背景 信息大爆炸時代&#xff1a…

Linux 標準IO的fopen和fclose

getchar(),putchar() ‐‐‐‐ 一個字符 gets(buf),puts(buf) ‐‐‐‐ 一串字符 scanf(),printf() ‐‐‐‐ 一個字符,一串字符都可以 fopen函數的形式 FILE * fopen(constchar *path , cost char *mode) /* * description : 打開一個文件 * param ‐ path…

進階篇07——InnoDB引擎介紹

概覽 邏輯存儲結構 架構 當執行增刪改查操作時,操作的是緩沖區的數據,如果緩沖區里沒有要操作的數據,就會從磁盤中讀取數據加載到緩沖區中;緩沖區的數據會以一定的頻率通過后臺線程刷新到磁盤中永久存儲。 內存結構 磁盤結構 后…

數據結構(Java):順序表集合類ArrayList

1、線性表 線性表,在邏輯結構上是連續的(可理解為連續的一條直線,一對一的關系),而在物理結構上不一定連續,通常以數組和鏈式結構進行存儲。 線性表是一種在實際中廣泛使用的數據結構,常見的線…

Vue介紹與入門(一篇入門)

Vue.js 是一個流行的 JavaScript 框架,專門用于構建用戶界面和單頁面應用程序。它簡單易學,但功能強大,能夠幫助開發者快速構建交互性強的 Web 應用。 本教程旨在幫助那些剛開始學習 Vue.js 的開發者快速入門,并掌握一些基礎知識…

【UE5.1 角色練習】12-坐騎——Part2(讓角色騎上坐騎)

目錄 前言 效果 步驟 一、坐騎的父類 二、將角色附加到坐騎 三、添加坐姿 四、騎上坐騎 五、從坐騎上下來 前言 在上一篇(【UE5.1 角色練習】11-坐騎——Part1(控制大象移動))基礎上繼續實現角色騎上坐騎的功能。 效果 …

語言的數據結構:樹與二叉樹(二叉樹篇)

語言的數據結構:樹與二叉樹(二叉樹篇) 前言概念特別的二叉樹滿二叉樹完全二叉樹 存儲結構順序存儲鏈式存儲 查找方式 前言 上文說到了樹,有人認為二叉樹是樹的每一個分支都有兩個子節點。其實這也對。但二叉樹在此基礎上還做了限…

RS422串口通信協議介紹和基礎代碼實現

**RS-422串口協議介紹**RS-422是一種工業標準的通信接口,其全稱是“平衡電壓數字接口電路的電氣特性”。它是在RS-232的基礎上發展而來,旨在解決RS-232通信距離短和速率低的缺點。以下是對RS-422串口協議的詳細介紹:傳輸速率與距離&#xff1…

MyCAT 2 簡單入門

MyCAT 2 基礎 什么是 MyCAT 2? MyCAT 2 是一款開源的數據庫中間件,它主要用于解決數據庫的分庫分表、讀寫分離等問題。MyCAT 2 基于 MyCAT 1 的架構進行優化和重構,具有更高的性能和穩定性,支持多種數據庫類型,包括 …

【QCustomPlot實戰系列】QCPGraph區域高亮

使用QCPDataSelection來設置選中的區域&#xff0c;并將QCPGraph的可選擇區域設置成QCP::stMultipleDataRanges void AreaPieces::initCustomPlot(QCustomPlot *parentPlot) {QVector<double> x {0, 1, 2, 3, 4, 5, 6, 7, 8};QVector<double> y {200, 560, 750…