咕嘟咕嘟命令后未发现安装

问题描述 投票:89回答:9

我装了一口(全局),它看起来像它的工作,因为它是把这个代码:

├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])

但是,当我键入gulp它说-bash: gulp: command not found

任何想法是怎么回事?

macos bash terminal npm gulp
9个回答
162
投票

原来,故宫被安装在错误的目录,所以我不得不通过运行此代码改变“故宫配置前缀”:

npm config set prefix /usr/local

然后我重新安装了全球一饮而尽(与-g PARAM)和它的工作正常。

这篇文章是我找到了解决办法:http://webbb.be/blog/command-not-found-node-npm


0
投票

我用从上面和其他地方的答案组合上了车Win10这个工作。在这里发帖对他人和未来的我。

我跟着从这里的说明:https://gulpjs.com/docs/en/getting-started/quick-start但上键入一饮而尽--version后的最后一步我得到的消息-bash:一饮而尽:找不到命令

为了解决这个问题:

  1. 我添加%APPDATA%\ NPM我Path环境变量
  2. 关闭了所有的Git的bash(CMD,PowerShell的,等...),并重新启动git的庆典。
  3. 然后一饮而尽--version工作

此外,发现下面的为什么不是在全球范围内安装一口,以及如何将其删除(不知道这是最好不过)原因:

what does gulp-"cli" stands for?

How to uninstall Gulp CLI from NPM globally?


54
投票

不知道为什么这个问题是下投票,但我有同样的问题,下面推荐的解决问题的博客文章。有一件事我要补充的是,在我的情况下,一旦我跑:

npm config set prefix /usr/local

我证实了npm root -g指着/usr/local/lib/node_modules/npm,但为了安装在gulp /usr/local/lib/node_modules,我不得不使用sudo

sudo npm install gulp -g


21
投票

如果您使用tcsh(这是Mac OS X上我的默认的shell),你可能只需要刚刚安装完成后,键入rehash到外壳:

npm install -g gulp

紧接着:

rehash

否则,如果这是你第一次安装gulp,你的shell可能无法识别,有一个新的可执行安装 - 让你无论是需要启动一个新的shell,或者在当前shell类型rehash

(这基本上是给你安装全球每个命令一次性的东西。)


16
投票

我知道这是一个古老的线程,但对于未来的我,以及他们的后代,我想我应该补充围绕“运行故宫作为sudo的”讨论我的两分钱。免责声明:我不使用Windows。这些步骤只是被证明在非Windows机器,虚拟和物理。

你可以不用通过改变权限故宫的默认目录使用sudo。


如何:更改权限,以不sudo NPM运行

Step 1: Find out where npm's default directory is.

  • 要做到这一点,打开终端,运行: npm config get prefix

Step 2: Proceed, based on the output of that command:

  • 方案一:故宫的默认目录为/usr/local 对于大多数用户来说,你的输出将显示NPM的默认目录是/ usr / local,即在这种情况下,你可以跳到步骤4,更新该目录的权限。
  • 方案二:故宫的默认目录为/usr/Users/YOURUSERNAME/node_modules/Something/Else/FishyLooking 如果您发现故宫的默认目录不是在/ usr /本地,但反而是你无法解释或看起来腥,你应该去第3步更改默认目录NPM,或你的风险在搞乱你的权限更大的规模。

Step 3: Change npm's default directory:

  • 有一对夫妇的方式去了解这一点,包括专为全球设备创建一个目录,然后添加该目录到$ PATH,但由于在/ usr / local是可能已经在你的路径,我认为这是简单的只是改变故宫的默认目录为。像这样:npm config set prefix /usr/local 有关我所提到的其他方法的详细信息,请参阅故宫文档here

Step 4: Update the permissions on npm's default directory:

  • 一旦你验证了故宫的默认目录是在一个合理的位置,你可以使用以下命令更新它的权限: sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}

现在,你应该能够在不npm <whatever>运行sudo。注意:您可能需要重新启动你的终端以使这些更改生效。


7
投票

我有类似的问题,我做了下面的步骤,它worked.Go到Mac终端和执行命令,

1.npm配置集前缀的/ usr /本地

2.sudo乔敦 - R的$(WHOAMI)$(NPM配置get前缀)/ {LIB / node_modules,垃圾桶,股}

这两个命令将设置NPM道路的权利,你不再有NPM使用sudo。接下来卸载吞气

  1. 翔升卸载一饮而尽
  2. 没有sudo重新安装一饮而尽,NPM安装一饮而尽-g

这应该工作!


4
投票

我有这个问题,越来越安装后,“未找到命令”,但我是安装到/ usr / local作为上述溶液中的描述。

我的问题似乎被我跑使用sudo的安装引起的。我做了以下。

  1. 使用sudo再次删除一饮而尽
  2. 在/ usr / local / lib目录/ node_modules的所有者更改为我的用户
  3. 没有sudo再次安装一饮而尽。 “故宫安装一饮而尽-g”

3
投票

你需要这样做npm install --global gulp。这对我的作品,我也有这个问题。这是因为你没有在全球范围安装该软件包。


0
投票

在我的情况下加须藤之前NPM安装解决一饮而尽命令没有发现问题

sudo npm install


0
投票

如果你想离开你的前缀完好,只是出口它的bin目录到PATH环境变量: export PATH=$HOME/your-path/bin:$PATH 我加入这行到我的$ HOME / .profile文件和采购它。

设置前缀/usr/local让你使用sudo,所以我喜欢有它在我的用户目录。您可以检查与npm prefix -g您的前缀。

© www.soinside.com 2019 - 2024. All rights reserved.