MacOS系统安装NodeJS后npm包全局命令不生效

在 Mac 上安装nodejs后,全局安装了 npm 包,但找不到对应的命令(例如yarn: command not found <package>),原因是npm 全局bin目录未添加到PATH变量导致的。以下是解决办法

先创建npm全局安装目录 名称可自定义此处用node_global

bash 复制代码
mkdir -p /user/local/node_global

再设置npm全局安装路径

arduino 复制代码
npm config set prefix /use/local/node_gloal

1. 获取 npm 全局bin目录

方法1:使用npm config get prefix

arduino 复制代码
npm config get prefix

目录该路径下:npm 的全局bin目录通常位于该路径下:

bash 复制代码
echo "$(npm config get prefix)/bin"

输出:

sql 复制代码
/user/local/node_global/bin

2. 将 npm 全局bin目录添加到PATH

运行:

bash 复制代码
export PATH="$(npm config get prefix)/bin:$PATH"

然后检查:

bash 复制代码
echo $PATH

如果$(npm config get prefix)/bin出现在PATH里面,说明已生效。

让配置永久生效

根据你使用的Shell,不同的配置文件:

  • Zsh(macOS默认Shell)

    bash 复制代码
    echo 'export PATH="$(npm config get prefix)/bin:$PATH"' >> ~/.zshrc
    source ~/.zshrc
  • Bash(如果你使用bash

    bash 复制代码
    echo 'export PATH="$(npm config get prefix)/bin:$PATH"' >> ~/.bashrc
    source ~/.bashrc

    3.确保npm全局安装的包可以找到

例如yarn,npm install yarn -g 检查它是否安装:

复制代码
yarn -v

输出

复制代码
1.22.22
相关推荐
None3213 小时前
【NestJs】基于Redlock装饰器分布式锁设计与实现
后端·node.js
Gogo11218 小时前
构建高性能 Node.js 集中式日志体系 (下篇):Pino + PM2 + OpenSearch 代码落地实战
node.js
小岛前端8 小时前
Node.js 宣布重大调整,运行十年的规则要改了!
前端·node.js
前端付豪9 小时前
Nest 项目小实践之前端注册登陆
前端·node.js·nestjs
codingWhat1 天前
整理「祖传」代码,就是在开发脚手架?
前端·javascript·node.js
臣妾没空1 天前
里程碑5:完成框架npm包抽象封装并发布
前端·npm
ServBay1 天前
Node.js、Bun 与 Deno,2026 年后端运行时选择指南
node.js·deno·bun
sudo_jin1 天前
前端包管理器演进史:为什么 npm 之后,Yarn 和 pnpm 成了新宠?
前端·npm
码路飞1 天前
Node.js 中间层我维护了两年,这周终于摊牌了——成本账单算完我人傻了
node.js
None3212 天前
【NestJs】使用Winston+ELK分布式链路追踪日志采集
javascript·node.js