MacOS终端执行ng new创建Angular应用报错:zsh: command not found: ng
解决zsh中
ng命令找不到的问题 当执行ng new my-project-name时出现zsh: command not found: ng,即便已经安装Node、Homebrew并执行过npm install -g @angular/cli和npm link @angular/cli,可以按以下步骤排查解决:
1. 确认npm全局包路径
执行以下命令获取npm全局安装的前缀路径:
npm config get prefix
输出通常为/usr/local(系统级)或~/.npm-global(用户级),对应的全局可执行文件目录是该路径下的bin文件夹,比如/usr/local/bin或~/.npm-global/bin。
2. 检查路径是否在zsh的PATH中
执行命令查看当前PATH:
echo $PATH
如果第一步得到的bin路径不在输出结果里,说明zsh找不到ng命令的位置,需要手动添加。
3. 将npm全局bin路径添加到zsh配置
打开zsh的配置文件~/.zshrc(如果不存在则创建),添加以下内容(替换为你的实际路径):
# 添加npm全局bin路径到PATH export PATH="$PATH:/usr/local/bin" # 若你的prefix是~/.npm-global,则替换为: # export PATH="$PATH:$HOME/.npm-global/bin"
保存文件后,执行以下命令让配置生效:
source ~/.zshrc
4. 排查权限或安装问题
如果上述步骤无效,可能是全局安装时的权限问题:
- 尝试重新安装Angular CLI(系统级安装需加sudo):
sudo npm install -g @angular/cli
- 若不想使用sudo,可将npm全局目录改为用户目录:
- 创建用户级全局目录:
mkdir ~/.npm-global- 配置npm使用该目录:
npm config set prefix '~/.npm-global'- 重新安装Angular CLI:
npm install -g @angular/cli- 再执行步骤3将
~/.npm-global/bin添加到PATH。
5. 验证Node版本兼容性
Angular CLI对Node版本有要求(如v16+对应CLI v16+),执行以下命令检查Node版本:
node -v
若版本过低,可通过Homebrew升级Node:
brew upgrade node
完成后重新执行ng version,若能显示Angular CLI版本,说明问题解决。
内容的提问来源于stack exchange,提问作者User9123
相关产品推荐
相关产品推荐

