问题描述
Mac 系统成功安装 pnpm 后,在新建终端中执行 pnpm -v 命令时提示"未找到"或"command not found"。
安装方法:
# 官方一键安装脚本(macOS/Linux 通用)
curl -fsSL https://get.pnpm.io/install.sh | sh -
-
脚本会自动下载并配置 pnpm,安装完成后需重启终端生效
-
若提示权限问题,可在脚本后添加
--sudo:curl -fsSL https://get.pnpm.io/install.sh | sudo sh -
安装已经到最后一步了,终端提示的意思是:pnpm 已经下载完成,需要手动激活环境变量才能使用
Next configuration changes were made: export PNPM_HOME="/Users/apple/Library/pnpm" case ":PATH:" in \*":PNPM_HOME:"*) ;; *) export PATH="PNPM_HOME:PATH" ;; esac To start using pnpm, run: source /Users/apple/.bashrc
source /Users/apple/.bashrc
- 这个命令会让刚才配置的
PNPM_HOME和 PATH 生效,不用重启终端就能用 pnpm 了。
无论用哪种方法,安装完成后执行以下命令,若能显示版本号则说明成功:
pnpm -v
- 若输出版本号(比如
10.20.0,和你终端显示的10.20.0对应),说明安装 + 激活成功! - 若没报错,就可以直接用 pnpm 操作项目了(比如
pnpm i安装依赖、pnpm run dev启动项目)。
!!!!!但是如果新建终端输入pnpm -v
报错:bash: pnpm: command not found

你的终端可能是 zsh (macOS 默认终端),而脚本只配置了 ~/.bashrc(bash 终端的配置文件)。如果下次重启终端后,输入 pnpm -v 提示 "command not found",按以下步骤修复(让所有终端都能识别 pnpm):
确认当前终端是 zsh 还是 bash(或其他 shell),有 3 种超简单的方法,新手也能一键判断:
方法 1:看终端窗口标题(最直观)
打开终端后,看窗口顶部的标题栏:
- 如果显示
终端 --- zsh或iTerm2 --- zsh(用 iTerm2 的话),就是 zsh 终端;- 如果显示
终端 --- bash,就是 bash 终端。
方法 2:执行 echo $SHELL 命令(最准确)
在终端输入以下命令,按回车,输出结果直接告诉你当前 shell:
bash
echo $SHELL
- 输出
(/bin/zsh)→ 是 zsh 终端(macOS 10.15+ 默认);- 输出
(/bin/bash)→ 是 bash 终端(macOS 10.14 及以下默认);- 其他输出(如
/bin/sh)→ 其他 shell(极少用)。
方法 3:看终端命令提示符(快速判断)
终端输入命令的 "前缀"(提示符)也能区分:
- zsh 默认提示符:通常是
%结尾(比如你的AxinxindeMBP:yudao-ui-admin-vue3 apple$里的$也可能是 zsh 自定义后的样式,macOS 下 zsh 也常显示$);- bash 默认提示符:通常是
$结尾(和 zsh 可能重复,所以不如前两种准确,但可辅助判断)。
zsh终端配置方法:
# 1. 把 pnpm 的环境变量配置复制到 zsh 的配置文件中
echo 'export PNPM_HOME="/Users/apple/Library/pnpm"' >> ~/.zshrc
echo 'case ":$PATH:" in *":$PNPM_HOME:"*) ;; *) export PATH="$PNPM_HOME:$PATH" ;; esac' >> ~/.zshrc
# 2. 激活 zsh 配置(立即生效)
source ~/.zshrc
bash终端配置方法:
把 pnpm 环境变量直接写到 ~/.bash_profile(bash 优先加载)
# 1. 把 pnpm 环境变量添加到 .bash_profile(bash 启动必加载)
echo 'export PNPM_HOME="/Users/apple/Library/pnpm"' >> ~/.bash_profile
echo 'case ":$PATH:" in *":$PNPM_HOME:"*) ;; *) export PATH="$PNPM_HOME:$PATH" ;; esac' >> ~/.bash_profile
# 2. 激活配置(当前终端立即生效,不用重启)
source ~/.bash_profile
# 3. 验证是否成功
pnpm -v
如果上面的方法没生效,可手动确认 PNPM_HOME 是否在 PATH 中:
bash# 查看 PATH 环境变量(看是否包含 /Users/apple/Library/pnpm) echo $PATH # 若不包含,手动添加(临时生效,重启终端后失效,用于测试) export PATH="/Users/apple/Library/pnpm:$PATH" # 再验证 pnpm -v
-
确保包含 pnpm 的安装路径(通常为
/usr/local/bin或用户目录下的.npm-global/bin)。 -
若仍提示 "command not found",按以下方法手动配置环境变量(极少数情况):
-
1. 打开终端配置文件(zsh 是 macOS 默认终端,用这个命令) open ~/.zshrc
2. 在文件末尾添加一行(复制粘贴即可) export PATH="HOME/.pnpm/bin:PATH"
3. 保存文件并关闭,然后生效配置 source ~/.zshrc # 4. 再次验证 pnpm -
-
这样不管用 bash 还是 zsh 终端,重启后都能正常使用 pnpm 了。
总结
现在你已经完成了 pnpm 的全部安装,核心命令和 npm 用法几乎一致,比如:
- 安装项目依赖:
pnpm i(对应npm install) - 全局安装包:
pnpm add -g 包名(对应npm install -g 包名) - 启动项目脚本:
pnpm run dev(和npm run dev一样)