多种方案教你彻底解决mac npm install -g后仍然不行怎么办sudo: xxx: command not found

问题概述

某些时候我们成功执行了npm install -g xxx,但是执行完成以后,使用我们全局新安装的包依然不行,如何解决呢?

解决方案1:

step1: 查看npm 全局文件安装地址

XXX@CN_CXXXMD6M ~ % npm list -g                    
/Users/XXX/.npm-global/lib
├── @quasar/cli@1.3.2
├── corepack@0.14.1
├── npm@8.19.2
└── yarn@1.22.18

step2: 打开环境变量配置文件,配置环境变量

vim ~/.bash_profile

把下面内容粘贴到环境变量文件里,

特别注意事项:/Users/XXX/一定是和上面的npm 全局文件安装地址保持一致!!!!!!!!!!
export PATH=/Users/XXX/.npm-global/bin:$PATH

保存.bash_profile的编辑,执行一下文件

source ~/.bash_profile
问题解决,大功告成

在这里插入图片描述

如果问题还没有解决,请参考下面其他解决方案解决权限问题并重新安装

在日常开发过程中,我们使用MAC执行 npm install -g 下载安装包的时候,经常会遇到如下报错:permission denied

报错详情
xxx@CN_C02xxxxx6M ~ % npm install -g yarn
npm ERR! code EACCES
npm ERR! syscall mkdir
npm ERR! path /usr/local/lib/node_modules/yarn
npm ERR! errno -13
npm ERR! Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/yarn'
npm ERR!  [Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/yarn'] {
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'mkdir',
npm ERR!   path: '/usr/local/lib/node_modules/yarn'
npm ERR! }
npm ERR! 
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR! 
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/xxxxx/.npm/_logs/2022-12-06T11_15_27_852Z-debug-0.log

解决方案如下:

解决报错方案一:(针对正常权限的电脑)

sudo npm i yarn -g

解决报错方案二:(仅限电脑权限管控严格情况下,无法获取权限)

step1: 查看npm 全局文件安装地址
XXX@CN_CXXXMD6M ~ % npm list -g                    
/usr/local/lib
├── @quasar/cli@1.3.2
├── corepack@0.14.1
├── npm@8.19.2
└── yarn@1.22.18
step2: 从其他人电脑上同样的目录,拷贝出来两份文件,一个是命令的快捷方式文件,一个是环境变量所指的路径文件,粘贴到自己电脑相同位置
  • 命令快照文件


  • 全局命令所指文件

step3: 打开环境变量配置文件,配置环境变量
vim ~/.bash_profile

把下面内容粘贴到环境变量文件里,

export PATH=/usr/local/lib/node_modules/yarn/bin/:$PATH

保存.bash_profile的编辑,执行一下文件

source ~/.bash_profile
问题解决,大功告成

命令行重新打开,就可以使用yarn

yarn -v

解决方案三:(建议大家都使用这种方案)

step1: 打开环境变量配置文件,配置环境变量
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
step2: 打开环境变量配置文件,配置环境变量
vim ~/.bash_profile

把下面内容粘贴到环境变量文件里,

export PATH=~/.npm-global/bin:$PATH

保存.bash_profile的编辑,执行一下文件

source ~/.bash_profile

step3: 问题解决,大功告成

命令行重新打开,就可以使用yarn

解决方案四:

step1:前提-已经安装homebrew

(如果未安装,可以打开终端,输入以下命令安装Homebrew)

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
step2:查看安装的brew的版本
brew --version 
step3:使用brew去安装我们需要的包,这里以yarn为例
brew install yarn

原理

报这个错,根本原因是由于npm全局安装模块的默认路径没有权限,通常有以下几种方式解决:
  • 修改全局安装路径的权限(方案一,开权限)
  • 修改默认安装路径 (方案三采用的就是这种)
  • 借助其他工具安装(方案四)
  • 其他方式(方案二)
今天就写到这里啦~
  • 小伙伴们,( ̄ω ̄( ̄ω ̄〃 ( ̄ω ̄〃)ゝ我们明天再见啦~~
  • 大家要天天开心哦

欢迎大家指出文章需要改正之处~
学无止境,合作共赢

在这里插入图片描述

欢迎路过的小哥哥小姐姐们提出更好的意见哇~~

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

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

相关文章

2023去水印小程序源码修复版-前端后端内置接口+第三方接口

去水印小程序源码,前端后端,内置接口第三方接口,修复数据库账号密码错误问题,内置接口支持替换第三方接口,看了一下文件挺全的,可以添加流量主代码,搭建需要准备一台服务器,备案域名…

JAVA面经整理(7)

一)什么是AQS? 1)AQS也被称之为是抽象同步队列,它是JUC包底下的多个组件的底层实现,Lock,CountDownLatch和Semphore底层都使用到了AQS AQS的核心思想就是给予一个等待队列和同步状态来实现的,它的内部使用一个先进先出…

软件设计之抽象工厂模式

抽象工厂模式指把一个产品变成一个接口,它的子产品作为接口的实现,所以还需要一个总抽象工厂和它的分抽象工厂。 下面我们用一个案例去说明抽象工厂模式。 在class中可以选择super类和medium类,即选择一个产品的子类。在type中可以选择产品的…

ubuntu 安装postgresql,增加VECTOR向量数据库插件 踏坑详细流程

PGSQL安装,删除,运行,修改密码流程 Ubuntu18.04安装与配置postgresql含远程连接教程(含踩坑记录)_sudo apt-get install postgresql-CSDN博客 详细安装流程以上博客,自己也记录下 安装vector扩展连接 声明…

C++默认参数(实参)

在本文中,您将学习什么是默认参数,如何使用它们以及使用它的必要声明。在C 编程中,您可以提供函数参数的默认值。默认参数背后的想法很简单。如果通过传递参数调用函数,则这些参数将由函数使用。但是,如果在调用函数时…

Git 学习笔记 | 安装 Git 及环境配置

Git 学习笔记 | 安装 Git 及环境配置 Git 学习笔记 | 安装 Git 及环境配置安装 Git配置 Git查看配置 Git 学习笔记 | 安装 Git 及环境配置 安装 Git 官方网站:https://git-scm.com/ 官网下载太慢,我们可以使用淘宝镜像下载:https://regist…

mysql面试题26:MySQL中什么是MVCC,它的底层原理是什么

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:什么是MVCC,它的底层原理是什么? MVCC(Multi-Version Concurrency Control)是一种并发控制机制,用于在数据库中实现并发事务的隔离性和一致性…

Pytorch-学习记录-1-Tensor

1. 张量 (Tensor): 数学中指的是多维数组; torch.Tensor data: 被封装的 Tensor dtype: 张量的数据类型 shape: 张量的形状 device: 张量所在的设备,GPU/CPU requires_grad: 指示是否需要计算梯度 grad: data 的梯度 grad_fn: 创建 Tensor 的 Functio…

React xlsx(工具库) 处理表头合并

前端导出excel表格 引入xlsx插件,不然应该是运行不起来的 npm i xlsx xlsx中文文档 插件2 exceljs npm i exceljs exceljs中文文档 导出 例子 import { ExportExcel } from ./exportExcel/index;const columns[{title: id,dataIndex: item1,},{title: 序号,dataInd…

php 安装mongodb扩展模块,rdkafka模块

mongodb mongodb扩展下载 选择php版本,根据报错提示,选择扩展对应的版本选择非安全进程将php_mongodb.dll放到php/ext目录下修改php.ini配置,添加extensionphp_mongodb.dll开启php_mongodb扩展,重启服务php -m 查看是否开启成功…

Reactor 模式网络服务器【I/O多路复用】(C++实现)

前导:本文是 I/O 多路复用的升级和实践,如果想实现一个类似的服务器的话,需要事先学习 epoll 服务器的编写。 友情链接: 高级 I/O【Linux】 I/O 多路复用【Linux/网络】(C实现 epoll、select 和 epoll 服务器&#x…

2023/10/7 -- ARM

【程序状态寄存器读写指令】 1.指令码以及格式 mrs:读取CPSR寄存器的值 mrs 目标寄存器 CPSR:读取CPSR的数值保存到目标寄存器中msr:修改CPSR寄存器的数值msr CPSR,第一操作数:将第一操作数的数值保存到CPSR寄存器中//修改CPSR寄存器,也就表示程序的状…