【问题标题】:firebase-tools "-bash: firebase: command not found"firebase-tools "-bash: firebase: command not found"
【发布时间】:2014-07-01 22:50:30
【问题描述】:

很高兴 Firebase 的托管服务现已完成测试。试图与Firebase-Tools包一起使用,我已成功安装它:

npm install -g firebase-tools

尝试运行任何工具失败

-bash: firebase: command not found

我已经尝试在我的.bash_profile中留下以下命令而没有任何运气

export PATH=/usr/local/share/npm/bin:$PATH

有什么想法吗?总的来说,命令行很新。

谢谢!

【问题讨论】:

  • 通常情况下,全局包附带的 CLI 被符号链接到一个目录中,该目录预计已经在您的 $PATH 中 - 也许这会有所帮助:stackoverflow.com/a/22767508/45375
  • 我的荣幸; 如果您发现链接的答案有帮助,您也可以投票(免责声明:我写的)。
  • 在 Mac 上重新启动终端为我做了这件事(不仅仅是重置,而是关闭并重新打开)。这可能是因为终端在开始时读取.bash_profile。如果您可以直接读取.bash_profile可能会更好的另一个命令。 span>
  • firebase很可能是安装在不同版本的npm下。例如,我使用NPM 12.19.0,但Firebase安装到NPM 10.10.0。我不得不到nvm use 10.10.0,那么Firebase被认为是命令。 span>

标签: bash firebase


【解决方案1】:

用终端运行下面​​的代码,

alias firebase="`npm config get prefix`/bin/firebase"

【讨论】:

  • 它有效,但我必须在重新启动计算机时一直重复此操作
  • 这对我有用......我不知道发生了什么,昨天我成功安装了 CLI,今天它失败了。
  • @ChristopheGudlake 可以将其添加到您的 .bash_profile
【解决方案2】:

在全球范围内安装 firebase-tools 对我有用:

npm install -g firebase-tools

【讨论】:

  • 这对我有用。终于不用一直加别名了……
【解决方案3】:

您应该将 npm bin 文件夹添加到您的 bash PATH 变量中。为此,请运行:

npm get prefix

它应该输出类似/home/your-username/npm-global的东西。

然后在您的 ~/.bashrc~/.bash_profile(如果您使用的是 Mac)文件中,添加:

export PATH="/home/your-username/npm-global/bin:$PATH" # Add npm bin PATH

注意npm get prefix 结果后面的“/bin”。

【讨论】:

  • 添加bin文件是关键一步。
  • 它是“.npm-global”
  • 这对我有用,添加到~/.bash_profile。谢谢!
  • 同样对于 Ubuntu 中的任何人,我在我的 .bashrc 中初始化 zsh,在初始化 zsh 之前确保你 export PATH=...,或者如果你愿意,你也可以将它放在 .zshrc 文件中。
【解决方案4】:

@mklement0 这个答案看起来不错,但我担心这会让对命令行如此陌生的人感到害怕。所以我要挑选最相关的部分。

@cienki 运行此命令以查看您应该在.bash_profile 文件中的PATH 前缀中添加什么:

npm get prefix

【讨论】:

  • 感谢@Flortify,我找到了我的 npm 前缀并且能够将它放入我的 PATH 中。不过,另一个新手问题:我尝试将它放在我的 .bash_profile 中,但是当我将它放在那里时它不起作用。在我正在处理的目录中,我必须从命令行运行export PATH=/Users/<myname>/npm/bin:$PATH 才能使其工作。我做错了什么?谢谢!
  • @cienki .bash_profile 仅在 shell 启动时读取。所以你可以(1)打开一个新的终端窗口(它将启动一个bash的新实例,它将读取.bash_profile(换句话说:如果你今晚注销你的机器,它会突然在早上!),或者,如果您不耐烦,(2)您可以在命令行上调用source .bash_profile来读取/执行它,这在功能上等同于手动调用相同的export命令行,就像你一样。干杯!
  • +1;但是请注意,与 ~/.bash_profile 相关的建议是 OSX 特定的(在 Linux 上,它将是 ~/.bashrc)。
  • 好点。 Mac OS X Terminal.app 为每个终端窗口/选项卡启动一个登录 shell。 bash 为每个登录 shell 运行 .bash_profile。但在 Linux 上,打开一个新的 xterm 不会创建登录 shell,因此只运行 .bashrc。为了消除差异,您通常在 .bash_profile 中添加一个 source .bashrc
  • 我按照这些步骤,但有同样的问题
【解决方案5】:

使用 Windows 10、Bash
这对我有用:

  1. npm get prefix // 找到路径,对我来说它是 C:\Users\User\AppData\Roaming\npm
  2. 搜索位于“系统属性”中的“环境变量”。
  3. 在“系统变量”下,找到 PATH 变量,选择它,然后单击“编辑”。单击“新建”并添加之前使用“npm get prefix”命令找到的路径(对我来说是 C:\Users\User\AppData\Roaming\npm) 然后点击“确定”
  4. 重启 Bash

firebase --version //检查firebase版本

【讨论】:

    【解决方案6】:

    如果您使用的是带有 m1 芯片的 macOS,则碰巧

    arch -x86_64 npm i -g firebase-tools
    

    假设你没有设置 PATH

    export PATH="`npm config get prefix`/bin:$PATH"
    

    就是这样,享受吧

    【讨论】:

    • 这是唯一有效的!谢谢。
    【解决方案7】:

    在 macOS 上:使用

    curl -sL firebase.tools | upgrade=true bash

    它对我有用

    firebase -V

    【讨论】:

      【解决方案8】:

      Bruno 的回答成功了,我只需要在 .bashrc 的 Ubuntu 中的 npm-global 处添加一个点:

      export PATH="/home/your-username/.npm-global/bin:$PATH" # Add npm bin PATH
      

      【讨论】:

        【解决方案9】:

        安装后:
        $ npm install -g firebase-tools
        $ firebase init
        -bash: firebase: command not found
        "如果您得到上述输出,请按照以下步骤操作:"

        对于 Windows 用户: 输入这个 cmd :
        $ npm get prefix
        C:\Users\Jeet\AppData\Roaming\npm [这里是位置]

        现在你必须在环境变量中设置 -> (windows+r) -> sysdm.cpl -> Advanced(tab) -> Environment Variables -> 在系统变量下 -> 点击路径 -> 编辑 -> C:\Users\Jeet\AppData\Roaming\npm [粘贴] 上述位置 -> 应用 - ok - ok.

        重启你的 bash 终端
        谢谢!!!

        【讨论】:

          【解决方案10】:

          对于 Mac OS Sierra:

          1. $ sudo npm install -g firebase-tools
          2. 停止其他节点进程使用$ ps aux | grep node
          3. 如果需要升级或安装模拟器 - $ npm install -g @google-cloud/functions-emulator
          4. 准备好了$ firebase --version

          【讨论】:

            【解决方案11】:

            对于使用 MacOS Catalina 10.15.2 的任何人,获取 bash PATH 变量为我解决了这个问题。

            运行:

            npm get prefix
            

            然后运行:

            export PATH=/Users/userid/.npm-global/bin:$PATH
            

            注意:我最近从旧的 High Sierra MacBook Pro 升级,也很困惑。

            【讨论】:

              【解决方案12】:

              以下命令在终端上适用于我

              curl -sL firebase.tools | upgrade=true bash
              

              此命令为我安装 firebase 工具

              【讨论】:

                【解决方案13】:

                对于使用 nvm 的任何人,可能会出现错误,因为您使用的 nvm 版本与您在全球首次安装 firebase 工具时使用的版本不同。对我来说就是这样。当我重新启动 webstorm nvm 时切换到不同的版本。

                运行 nvm list 检查您使用的版本并运行 nvm use x.x.x 切换到您最初安装 Firebase 工具的正确版本。

                【讨论】:

                  【解决方案14】:

                  这在 Mac 上对我有用(其他人在上面发布的内容相同,仅适用于 Mac):

                  1. 在 Finder 中转到您的主文件夹(以您的用户名命名,在我的例子中是“macbook”)

                  2. 按 cmd+shift+dot(将显示隐藏文件)

                  3. 转到.npm-global/bin文件夹并复制其路径(Finder菜单->查看->显示路径栏,右键单击路径栏中的bin文件夹->“将'bin'复制为路径名”)

                  4. 打开终端(默认为主文件夹)并转到nano ~/.bash_profile

                  5. 在文件顶部添加export PATH="<cmd+v>:$PATH"(看起来类似于:export PATH="/Users/macbook/.npm-global/bin:$PATH"

                  6. 保存 .bash_profile 更改并重新启动终端,firebase 命令现在应该可以工作了

                  【讨论】:

                    【解决方案15】:

                    如果你安装 firebase-tools 使用

                    yarn global add firebase-tools
                    

                    我得到了同样的错误然后我得到了答案并执行了这个

                    export PATH="$(yarn global bin):$PATH"
                    

                    然后我可以很好地完成firebase login

                    【讨论】:

                      【解决方案16】:

                      我在 Linux 上,使用管理员权限安装软件包解决了问题:

                      sudo npm i -g firebase-tools
                      

                      【讨论】:

                        【解决方案17】:

                        只需重新安装node.js。这对我有用,并且火力命令得到了认可。

                        【讨论】:

                        • 投了赞成票,因为这个解决方案对我有用。我相信问题是在包含 Node 的 Visual Studio 更新之后开始的。
                        【解决方案18】:

                        这是针对更新的 mac ma​​c Os Catalina(10.15.1+) 和 zsh 上的。

                        1. 转到终端 (vim .zprofile)
                        2. 添加此导出 PATH="/Users/Your Username/.npm-global/bin:$PATH"

                        为我工作!

                        【讨论】:

                          【解决方案19】:

                          面临同样的问题,我是一个新手后端人员。 已使用npm install firebase-tools 它没有安装,您无法运行。 我尝试查看论坛,这对我有用: sudo npm install -g firebase-tools。 然后它会在您firebase login 时询问权限。 我正在使用 Ubuntu。

                          【讨论】:

                            【解决方案20】:

                            在尝试了几乎所有方法之后,只有一个对我有用(我在 MacOs Catalina 上):

                            在您的终端中尝试以下操作:

                            curl -sL https://firebase.tools | bash
                            This will check the OS of your machine and then install everything else automatically and properly.
                            
                            The command is from the official Firebase Documentation.
                            

                            https://stackoverflow.com/a/60474459/1245341

                            【讨论】:

                              【解决方案21】:

                              你忘了sudo输入这个

                              sudo npm install -g firebase-tools
                              

                              问题解决了。

                              【讨论】:

                                【解决方案22】:

                                我知道大多数答案都适用于所有通用的“找不到命令”错误。基本上是通过手动设置 PATH 变量,但是对于这个与“未找到 firebase 命令”相关的特定问题,有一种更简单的方法:

                                试试这个 cURL 命令,它将彻底解决这个问题,并将任何用户错误降至最低。

                                使用自动安装脚本安装 Firebase CLI 运行以下 cURL 命令(Mac 或 Windows):

                                curl -sL https://firebase.tools |重击

                                来源:https://firebase.google.com/docs/cli#install-cli-windowshttps://firebase.google.com/docs/cli#install-cli-mac-linux

                                【讨论】:

                                  【解决方案23】:

                                  上述解决方案均无效,因为我将 nvm 用于节点版本

                                  所以而不是 npm i -g firebase-tools

                                  使用 sudo npm i -g firebase-tools

                                  完成!

                                  【讨论】:

                                    【解决方案24】:

                                    添加到 Durul Dalkanat 的答案,

                                    假设你已经执行了npm install firebase-tools -g

                                    1. 首先得到npm get prefix的命令输出。
                                    2. 打开主目录下的.bashrc文件,在文件末尾添加alias <output of npm get prefix>/bin/firebase
                                    3. 在主目录中运行source .bashrc

                                    享受吧!

                                    firebase 的别名将是主系统中的实际 firebase 路径,此解决方案应该可以完美运行。

                                    【讨论】:

                                      【解决方案25】:

                                      安装后

                                      $ npm install -g firebase-tools

                                      注意它安装的目录我所做的是找到安装firebase的目录。在我的情况下, C:\usr\local 然后我复制了三个 firebase 文件。我还进入了 node_modules 文件夹并复制了 firebase 工具文件夹。然后我在文件管理器中进入我的 app 目录并粘贴 firebase 文件,然后创建一个新的 node_modules 文件夹并粘贴 firebase-tools 文件夹。

                                      现在转到你的 cmd 并运行

                                      $ firebase init

                                      它应该可以工作

                                      【讨论】:

                                        【解决方案26】:

                                        如果您是 Windows 8 用户,一种可能的解决方案是将 PATH 手动放入环境变量中...

                                        1. 在 Windows 桌面上,右键单击我的电脑。
                                        2. 在弹出菜单中,单击“属性”。
                                        3. 在“系统属性”窗口中,单击“高级”选项卡,然后单击“环境变量”。
                                        4. 在系统变量窗口中,突出显示路径,然后单击编辑。
                                        5. 在“编辑系统变量”窗口中,将光标插入到“变量值”字段的末尾。
                                        6. 如果最后一个字符不是分号 (;),则添加一个。
                                        7. 在最后一个分号之后,键入要查找的文件的完整路径。

                                        对我来说是:C:\Users\ 'username' \AppData\Roaming\npm 要获取您的路径,请将此字符串放在命令行中:

                                        $ npm get prefix

                                        在每个打开的窗口中单击确定

                                        【讨论】:

                                          【解决方案27】:

                                          我尝试了上述所有答案、其他 SO 答案和 GitHub 答案,但没有任何效果。唯一对我有用的是将我的 index.js 文件中的所有内容临时保存在其他位置,删除整个云函数文件夹,然后重新安装并从 beginning 开始所有内容。

                                          【讨论】:

                                            【解决方案28】:

                                            我从这里和其他论坛尝试了很多东西,但最终对我有用(这更像是一种变通方法)是 download the binary 然后打开它并设置所有火力基地给我的东西。但是,我发现如果我打开一次后移动它,它就不起作用了。

                                            目前这对我来说效果很好,因为我是编程新手,其他帖子谈论的所有“PATH”内容对我来说都不起作用或没有多大意义。

                                            我使用的是 Windows 10 专业教育版。希望这可以帮助有类似挣扎的人。

                                            【讨论】:

                                              【解决方案29】:

                                              在 Linux 中只需运行以下命令。我认为它会解决它。

                                              sudo npm install -g firebase-tools
                                              

                                              【讨论】:

                                              • 不要只是复制其他答案,而是可以提供一些额外的信息
                                              猜你喜欢
                                              • 2019-07-07
                                              • 2018-07-18
                                              • 2010-12-09
                                              • 1970-01-01
                                              • 2010-11-12
                                              • 2017-04-08
                                              • 1970-01-01
                                              • 1970-01-01
                                              • 1970-01-01
                                              相关资源
                                              最近更新 更多