macos 使用 nvm 管理 node 并自定义安装目录

系统环境:MacOS Version

参考文章:

  • Github 地址:https://github.com/nvm-sh/nvm

安装的方式是很简单的,直接执行下面的命令即可:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash# 然后配置环境变量,下面会详细说明

但是要注意,下面的命令默认会安装到 ~/.nvm 目录,虽然 MacOS 没有 Windows 的分盘概念,但是对于有点强迫症的码农来说(我不信身为一个码农,你没有一点强迫症),就是不想让它在 ~/.nvm 目录下。


接下来,在喜欢且强迫的位置创建一个目录当作 nvm 的主目录,例如在 /Users/roc/Documents/tools/nvm 目录下:

【注】NVM_DIR 不能使用 ~,如果使用的话会提示没有该目录。例如:~/Documents/tools/nvm

# NVM_DIR 中的字符串不需要以 / 结尾
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | \
NVM_DIR="/Users/roc/Documents/tools/nvm" bash# 输出如下:
=> Downloading nvm from git to '/Users/roc/Documents/tools/nvm'
=> Cloning into '/Users/roc/Documents/tools/nvm'...
...
# 提示设置环境变量
=> Profile not found. Tried ~/.bashrc, ~/.bash_profile, ~/.zprofile, ~/.zshrc, and ~/.profile.
=> Create one of them and run this script againOR
=> Append the following lines to the correct file yourself:export NVM_DIR="$HOME/Documents/tools/nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
...

安装完成后,开始配置环境变量。

【注】版本较新的 macOS 系统中,终端默认为 zsh,所以要配置到 ~/.zshrc 文件中,如果没有则需要创建该文件。配置系统全局的 /etc/profile 配置文件中当然也可以,但是没有必要。

# 创建或编辑 ~/.zshrc
vim ~/.zshrc# 添加上面的配置信息,信息如下:
export NVM_DIR="$HOME/Documents/tools/nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm# 运行以下命令以加载新的配置
source ~/.zshrc# 保存即可

验证 nvm 是否安装成功:

nvm -v# 输出如下:
0.40.0

安装成功了,手动维护目录,终于干净了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/61699.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数字IC后端实现时钟树综合系列教程 | Clock Tree,Clock Skew Group之间的区别和联系

Q: Clock,Clock Tree和Skew Group有何区别?Innovus CCOPT引擎是如何使用这些的? Clock是时序约束SDC中的时钟定义点。 create_clock -name clk_osc -period $period_24m [get_ports xin_osc0_func] 时钟树综合(Clock Tree Synthesis)之前应…

tcpdump抓包 wireShark

TCPdump抓包工具介绍 TCPdump,全称dump the traffic on anetwork,是一个运行在linux平台可以根据使用者需求对网络上传输的数据包进行捕获的抓包工具。 tcpdump可以支持的功能: 1、在Linux平台将网络中传输的数据包全部捕获过来进行分析 2、支持网络层…

安装支持ssl的harbor 2.1.4 docker 19.03.8 docker-compose 1.24.0

版本: docker 19.03.8 docker-compose 1.24.0 harbor: harbor-offline-installer-v2.1.4.tgz 1、先在/root下生成证书 #生成ca根证书 openssl genrsa -out ca.key 4096#创建ca证书 openssl req -x509 -new -nodes -sha512 -days 3650 \-subj "/CCN/STShenzh…

青少年编程等级考试C++一级,硬币反转问题

代码 #include<iostream>using namespace std;bool a[300];int main(){ int n,m; cin >> n >> m; for(int i 1;i < m;i) { for (int j 1;j < n;j) { if( j % i 0) { a[j] !a[j];…

【Qt流式布局改造支持任意位置插入和删除】

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、源代码二、删除代码三、扩展总结 前言 最近在做一个需求需要流式布局&#xff0c;虽然官方example里有一个流式布局范例&#xff0c;但是不能满足我的需求…

“AI玩手机”原理揭秘:大模型驱动的移动端GUI智能体

作者&#xff5c;郭源 前言 在后LLM时代&#xff0c;随着大语言模型和多模态大模型技术的日益成熟&#xff0c;AI技术的实际应用及其社会价值愈发受到重视。AI智能体&#xff08;AI Agent&#xff09;技术通过集成行为规划、记忆存储、工具调用等机制&#xff0c;为大模型装上…

小R的二叉树探险 | 模拟

问题描述 在一个神奇的二叉树中&#xff0c;结构非常独特&#xff1a; 每层的节点值赋值方向是交替的&#xff0c;第一层从左到右&#xff0c;第二层从右到左&#xff0c;以此类推&#xff0c;且该二叉树有无穷多层。 小R对这个二叉树充满了好奇&#xff0c;她想知道&#xf…

Unity类银河战士恶魔城学习总结(P141 Finalising ToolTip优化UI显示)

【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili 教程源地址&#xff1a;https://www.udemy.com/course/2d-rpg-alexdev/ UI部分暂时完结&#xff01;&#xff01;&#xff01; 本章节优化了UI中物品描述的显示效果&#xff0c;技能描述的显示效果 并且可以批…

快速获取url路径参数方法

如何根据当前url获取路径上的参数值&#xff1f; 例&#xff1a; // 若网页前路径url https://editor.csdn.net/md/?id1&workId2&name小包子方法如下&#xff1a; urlGetParam(param) {const reg new RegExp((^|&)${param}([^&]*)(&|$));const r deco…

windows实现VNC连接ubuntu22.04服务器

最近弄了一个700块钱的mini主机&#xff0c;刷了ubuntu22.04系统&#xff0c;然后想要在笔记本上通过VNC连接&#xff0c;这样就有了一个linux的开发环境。最后实现的过程为&#xff1a; 安装vnc服务器 安装 VNC 服务器软件&#xff1a; sudo apt update sudo apt install t…

Perforce《2024游戏技术现状报告》Part3:生成式AI、版本控制、CI/CD等游戏技术的未来趋势与应用

游戏开发者一直处于创新前沿。他们的实践、工具和技术受到各行各业的广泛关注&#xff0c;正在改变着组织进行数字创作的方式。 近期&#xff0c;Perforce发布了《2024游戏技术现状报告》&#xff0c;通过收集来自游戏、媒体与娱乐、汽车和制造业等高增长行业的从业者、管理人…

初阶数据结构之队列的实现

1 队列的定义 什么是队列呢&#xff1f;队列只允许在一端进行插入数据操作&#xff0c;在另一端进行删除数据操作。队列具有先进先出FIFO(First In First Out)的特性。 队头&#xff1a;删除数据的一端称为队头。 队尾&#xff1a;插入数据的一端称为队尾。 2 队列底层结构…

Linux ss 命令详解

简介 ss 全称 Socket Statistics&#xff0c;是一个用于探究 Linux 上的套接字和网络连接的强大实用程序&#xff0c;它被用来替代老版的 netstat &#xff0c;提供更快、更详细的信息输出。 常用选项 查看所有 sockets ss -a# 显示所有监听和未监听的sockets显示监听的 so…

【C语言】连接陷阱探秘(3):形参、实参与返回值

目录 一、形参的 “迷障” 1.1. 定义与功能 1.2. 类型不匹配 1.3. 数量不一致 1.4. 顺序不一致 1.5. 数组形参退化 二、实参的 “暗礁” 2.1. 定义与功能 2.2. 求值顺序 “谜题” 2.3. 悬空指针 “深渊” 三、返回值的 “陷阱” 3.1. 定义与功能 3.2. 陷阱与缺陷 …

阿里云私服地址

1.解压apache-maven-3.6.1-bin 2.配置本地仓库&#xff1a;修改conf/dettings.xml中的<localReoisitory>为一个指定目录。56行 <localRepository>D:\apache-maven-3.6.1-bin\apache-maven-3.6.1\mvn_repo</localRepository> 3.配置阿里云私服&#xff1a;…

STM32-- 调试- 延时、编译空循环

编译对空循环的处理&#xff0c;会影响堵塞延时效果&#xff0c;具体怎么处理的还不知道&#xff0c;只知道结果和现象。 模拟串口输出字符&#xff0c;用到延时函数&#xff0c;同样的延时函数&#xff0c;会有正常和不正常输出的情况&#xff1b;具体现象如下&#xff0c; /…

小狐狸AI数字人分身声音克隆形象克隆口播口型同步SAAS系统源码

AI数字人软件系统的未来趋势和用途正朝着多模态交互和智能化方向发展。 1. **多模态交互**&#xff1a;AI数字人技术正在从单一的文本或语音交互&#xff0c;转变为更加自然的多模态交互方式&#xff0c;包括语言对话、行为互动和自主学习能力。这种技术的提升使得数字人能够更…

Idea忽略提交文件、Idea设置文件隐藏、Idea提交时隐藏部分文件、git提交时忽略文件

文章目录 一、在idea中commit文件时隐藏文件方式一&#xff1a;创建.gitignore文件&#xff08;推荐&#xff09;方式二&#xff1a;‌通过File Types设置隐藏文件方式三&#xff1a;通过Git配置忽略文件‌&#xff08;不推荐&#xff09;总结 二、可能遇到的问题2.1、.gitigno…

FastGPT 和 DiffYAI 算不算ANGENT

FastGPT 和 DiffYAI 这类应用从某种程度上来说&#xff0c;可以算是“智能体&#xff08;Agent&#xff09;”&#xff0c;但其具体性质和智能体的定义范围有关。以下是详细分析&#xff1a; 什么是智能体&#xff08;Agent&#xff09;&#xff1f; 智能体是一种能够感知环境…

ARM 架构(Advanced RISC Machine)精简指令集计算机(Reduced Instruction Set Computer)

文章目录 1、ARM 架构ARM 架构的特点ARM 架构的应用ARM 架构的未来发展 2、RISCRISC 的基本概念RISC 的优势RISC 的应用RISC 与 CISC 的对比总结 1、ARM 架构 ARM 架构是一种低功耗、高性能的处理器架构&#xff0c;广泛应用于移动设备、嵌入式系统以及越来越多的服务器和桌面…