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

news2025/4/9 15:09:20

问题概述

某些时候我们成功执行了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.coloradmin.cn/o/1067827.html

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

相关文章

45 二叉树的右视图

二叉树的右视图 题解1 层序遍历——BFS题解2 递归——DFS 给定一个二叉树的根节点 root&#xff0c;想象自己站在它的右侧&#xff0c;按照从顶部到底部的顺序&#xff0c;返回从右侧所能看到的节点值。 提示: 二叉树的节点个数的范围是 [0,100]-100 < Node.val < 100 …

使用Docker安装Redis

一、如果虚拟机有redis运行则&#xff0c;关闭本地redis 1、查看redis是否运行 ps -ef | grep redis 2、 关闭本地redis redis-cli -a 123456 shutdown 3、如果需要启动本地redis #切换到redis目录 cd /opt/redis/bin redis-server redis.conf #关闭进程 kill [进程号] 二、…

element-plus自动引入组件报错,例如collapse、loading

element-plus自动引入组件&#xff0c;例如collapse、loading&#xff0c;使用时报错&#xff0c;报错信息如下图所示&#xff1a; 解决办法&#xff1a;vite-config.ts改变vue的引入顺序&#xff0c;将vue放在第一个

从0开始python学习-30.selenium frame子页面切换

目录 1. frame切换逻辑 2. 多层子页面情况进行切换 3. 多个子页面相互切换 1. frame切换逻辑 1.1. 子页面的类型一般分为两种 frame标签 iframe标签 1.2. 子页面里面的元素和主页面的元素是相互独立 子页面元素需要进去切换才能操作 如果已经进入子页面&#xff0c;那么…

[python 刷题] 3 Longest Substring Without Repeating Characters

[python 刷题] 3 Longest Substring Without Repeating Characters 题目&#xff1a; Given a string s, find the length of the longest substring without repeating characters. 这到提要求找的是最长的&#xff0c;没有重复符号的子字符串 解题思路是用双指针哈希表&…

华为云API自然语言处理的魅力—AI情感分析、文本分析

云服务、API、SDK&#xff0c;调试&#xff0c;查看&#xff0c;我都行 阅读短文您可以学习到&#xff1a;人工智能AI自言语言的情感分析、文本分词、文本翻译 1 IntelliJ IDEA 之API插件介绍 API插件支持 VS Code IDE、IntelliJ IDEA等平台、以及华为云自研 CodeArts IDE&a…

JDBC-day02(使用PreparedStatement实现CRUD操作)

所需的数据库数据要导入到自己的数据库库中 三&#xff1a;使用PreparedStatement实现CRUD操作 数据库连接被用于向数据库服务器发送命令和 SQL 语句&#xff0c;并接受数据库服务器返回的结果。其实一个数据库连接就是一个Socket连接。CRUD操作&#xff1a;根据返回值的有无…

Flink学习笔记(一):Flink重要概念和原理

文章目录 1、Flink 介绍2、Flink 概述3、Flink 组件介绍3.1、Deploy 物理部署层3.2、Runtime 核心层3.3、API&Libraries 层3.4、扩展库 4、Flink 四大基石4.1、Checkpoint4.2、State4.3、Time4.4、Window 5、Flink 的应用场景5.1、Event-driven Applications【事件驱动】5.…

Flink+Doris 实时数仓

Flink+Doris 实时数仓 Doris基本原理 Doris基本架构非常简单,只有FE(Frontend)、BE(Backend)两种角色,不依赖任何外部组件,对部署和运维非常友好。架构图如下 可以 看到Doris 的数仓架构十分简洁,不依赖 Hadoop 生态组件,构建及运维成本较低。 FE(Frontend)以 Java 语…

好奇喵 | PT(Private Tracker)——什么是P2P,什么是BT,啥子是PT?

前言 有时候会听到别人谈论pt&#xff0c;好奇猫病又犯了&#xff0c;啥子是pt&#xff1f; PT——你有pt吗&#xff1f;啥是pt&#xff1f; 从BT开始 BitTorrent是一种点对点&#xff08;P2P&#xff09;文件共享协议&#xff0c;用于高速下载和上传大型文件。它允许用户通…

【Oracle】Oracle系列十九--Oracle的体系结构

文章目录 往期回顾前言1. 物理结构2. 内存结构2.1 SGA2.2 后台进程 3. 逻辑结构 往期回顾 【Oracle】Oracle系列之一–Oracle数据类型 【Oracle】Oracle系列之二–Oracle数据字典 【Oracle】Oracle系列之三–Oracle字符集 【Oracle】Oracle系列之四–用户管理 【Oracle】Or…

Springboot项目log4j与logback的Jar包冲突问题

异常信息关键词&#xff1a; SLF4J: Class path contains multiple SLF4J bindings. ERROR in ch.qos.logback.core.joran.spi.Interpreter24:14 - no applicable action for [properties], current ElementPath is [[configuration][properties]] 详细异常信息&#xff1a…

【深度学习】UNIT-DDPM核心讲解

文章目录 大致介绍&#xff1a;扩散损失&#xff1a;转换损失&#xff1a;循环一致性损失&#xff1a;推理过程&#xff1a;优缺点&#xff1a; 参考文章&#xff1a; https://blog.csdn.net/ssshyeong/article/details/127210086 这篇文章对整个文章 UNIT-DDPM: UNpaired Imag…

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

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

开发与运营:“开发”和“运营”角色有何不同和重叠?

开发和运营是促进软件系统交付的两种角色。大多数大规模构建软件的组织都会雇用这两个学科的人员。不过,开发和运维并不是完全孤立的。团队重叠并实现更高的吞吐量是很常见的。 在本文中,您将学习区分开发人员和操作人员之间的主要区别,以及它们重叠的方式。尽管有将两者结合…

Synchronized的实现和锁升级

1.JVM是如何处理和识别Synchronized的&#xff1f; 我们从字节码角度分析synchronized的实现&#xff1a; Synchronized(锁对象){}同步代码块底层实现方式是monitorenter和monitorexit指令。 修饰普通同步方法时底层实现方式是执行指令会检查方法是否设置ACC_SYNCHRONIZED&am…

11个在线免费调整图像大小而不会降低质量工具

图片对于增强您的网站、博客和其他在线平台的视觉效果非常重要&#xff0c;而这些图片的正确尺寸在这里起着重要作用。如果您有多种尺寸的图像并且想要调整为一个尺寸&#xff0c;可以使用多种在线图像调整工具。使用在线工具&#xff0c;没有软件下载或安装的麻烦&#xff0c;…

比较常见的在线项目管理系统有哪些?

在线项目管理系统作为一个适用于各领域任务管理、工时收集、团队协作与即时沟通的企业级在线项目管理解决方案&#xff0c;可以为用户同时协调和管理数以百计的项目和团队成员&#xff0c;而软件所具有的成熟&#xff0c;可靠和友好特性&#xff0c;将不再让用户在易用性和功能…

论文阅读--Energy efficiency in heterogeneous wireless access networks

异构无线接入网络的能源效率 论文信息&#xff1a;Navaratnarajah S, Saeed A, Dianati M, et al. Energy efficiency in heterogeneous wireless access networks[J]. IEEE wireless communications, 2013, 20(5): 37-43. I. ABSTRACT && INTRODUCTION 本文提出了无…

Holographic MIMO Surfaces (HMIMOS)以及Reconfigurable Holographic Surface(RHS)仿真

这里写目录标题 Simulation setupchatgpt帮我总结代码 Holographic MIMO Surfaces &#xff08;HMIMOS&#xff09;以及Reconfigurable Holographic Surface&#xff08;RHS&#xff09;仿真&#xff1a; Simulation setup In this section, we evaluate the performance of …