(全网最详细!!)npm:无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称


问题概述

在这里插入图片描述

遇到问题:
在终端中输入“sudo”/"npm"命令,出现错误提示:无法将“sudo”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。


一、分析原因

  1. cmd运行node -v, npm -v检查是否安装。
node -v
npm -v

如果cmd窗口提示,node不是内部或外部命令,也不是可运行的程序,则判断是:

  1. 未正确配置环境变量,或者没有配置环境变量问题。
  2. 没有全局安装npm。

二、解决办法

1.安装node.js

Node.js是一个Javascript运行环境。

(1)下载并安装

nodejs下载地址:https://nodejs.org/en/
nodejs官网
点击红色框,进行下载。
在这里插入图片描述
按照提示框,一直点击next按钮,直到finish。

(2)配置环境

  1. 在桌面右击鼠标,点击“设置”。
    请添加图片描述
  2. 搜索框内输入“控制面板”
    请添加图片描述
  3. 点击“系统”,并点击“高级系统设置”请添加图片描述请添加图片描述
  4. 点击“环境变量”,在用户变量中点击“新建”,变量名输入NODE_PATH,变量值输入nodejs的地址。笔者在D盘新建了文件夹,命名为“nodejs”,将官网下载的nodejs内容放入文件夹内。
    请添加图片描述
    在这里插入图片描述
    在这里插入图片描述
  5. 在用户变量的path中,输入 %NODE_PATH%
    在这里插入图片描述
    至此,nodejs环境配置完毕。

(3)打开CMD,检查是否正常path路径是否正常。

win+R,输入cmd打开命令行,输入下面语句。

echo %PATH%

在这里插入图片描述
出现如图内容,证明环境配置完成。

(4)安装完成后测试下nodejs和npm是否安装成功。

在终端中输入以下两条命令语句:

node -v
npm -v

在这里插入图片描述
此时,nodejs和npm已安装完毕。

(5) npm配置

  1. 先配置npm的全局模块的存放路径以及cache的路径。在NodeJs下建立"node_global"及"node_cache"两个文件夹。
    在这里插入图片描述
  2. 在终端运行以下两条命令语句,如图所示:
npm config set prefix "D:\nodejs\node_global"

npm config set cache "D:\nodejs\node_cache"

在这里插入图片描述

解决可能会出现的问题:

问题一:npm WARN config global --global, --local are deprecated. Use --location=global instead.
解决办法(点击该链接)

请添加图片描述
问题二:npm WARN logfile could not create logs-dir: Error: EPERM: operation not permitted, mkdir ‘D:\nodejs\node_cache_logs’
解决办法(点击该链接)

以上问题解决后,如图所示,干净利索:
在这里插入图片描述
3. 输入命令npm config set registry=http://registry.npm.taobao.org 配置镜像站。
4. 输入命令npm config list 显示所有配置信息。
在这里插入图片描述
5. 检查一下镜像站。输入以下两行命令语句:

npm config get registry
npm info vue 

在这里插入图片描述

### 回答1: 这个提示意味着npm创建日志目录时出现了错误,因为操作权限不够。具体来说,它试图在"c:\\program files\\nodejs\\node_cache\\_logs"目录下创建日志文件夹,但因为没有足够的权限而失败了。 ### 回答2: 这个警告信息是npm在使用过程中尝试创建日志文件夹时遇到了权限不足的问题。错误信息显示操作被拒绝,也就是当前用户没有足够的权限来创建这个文件夹。 这个问题的出现主要有两种可能原因。一种是当前计算机用户的权限不足,另一种是因为文件夹所在的文件路径存在问题。 如果是权限问题,首先需要检查当前计算机上运行的用户是否拥有管理员权限。只有管理员账户才能拥有完全的系统控制权,才能够对文件夹进行操作。如果当前账户没有管理员权限,则需要使用管理员账户登录系统,然后打开命令提示符PowerShell窗口运行npm命令。 另外一个可能的原因是文件夹的路径存在问题。npm默认会将日志文件夹放在"c:\program files\nodejs\node_cache\_logs"路径下。如果这个路径不存在,则会导致创建文件夹失败。解决方法就是手动创建这个文件夹,并赋予当前用户相应的权限。 后,如果以上两种方法不能解决问题,那么可能是防病毒软件系统安全软件对npm命令进行了限制。这时需要暂时关闭这些软件,再尝试运行npm命令,看是否能够解决问题。 总之,该警告信息的出现代表着npm在运行时遇到了一些问题,需要细心排查解决。针对不同的情况,我们可以采用不同的解决方法,从而保证npm能够稳定运行。 ### 回答3: 这个警告是NPM在执行命令时尝试创建一个日志文件夹,并且它指定的路径是c:\program files\nodejs\node_cache\_logs,但是操作系统拒绝了这个操作。在Windows操作系统中,这可能是由于权限问题引起的。 如果您是在Windows的管理员帐户下运行NPM,则可以尝试通过右键单击CMD.exe并选择“以管理员身份运行”来解决此问题。这将以管理员权限打开命令提示符窗口,使您能够执行向c:\program files目录中添加文件夹所需的操作。您还可以尝试更改目录权限以允许NPM在其中创建日志文件夹,尽管这可能需要经验丰富的用户来执行。 另一种解决方法是在环境变量中设置一个不同的缓存路径,以避免在c:\program files目录下创建文件夹。例如,您可以在您的~/.npmrc文件中添加以下行: cache=C:\Users\<your user name>\AppData\Roaming\npm-cache 这将创建一个名为npm-cache的文件夹,该文件夹位于您的用户文件夹中,并且NPM将在其中缓存所有包。如果您遇到此警告,NPM将在该文件夹中创建日志文件夹,而不是在c:\program files目录下创建它。 总之,NPM警告“logfile could not create logs-dir: error: eperm: operation not permitted,mkdir 'c:\program files\nodejs\node_cache\_logs'”通常是由于操作系统权限问题引起的。通过以管理员身份运行CMD,更改目录权限设置不同的缓存路径可以解决此问题。
评论 58
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值