修复未找到的 zsh 命令:brew? (安装自制软件)
Fixing zsh command not found: brew? (installing Homebrew)
我正在尝试将 Homebrew 安装到我的 M1 Mac。我的默认 shell 是 zsh,我想保持这种状态。我运行:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
并且它说安装成功但是在尝试命令 brew doctor
和 brew help
之后都返回了错误 zsh: command not found: brew
我不太了解 shell 或编程,所以我可以尝试的任何事情都会有所帮助。
然后我正要尝试 un/re 安装它 运行:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
但是出现警告以迁移到此命令:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"
这让我相信它可能只是位置错误 shell?
可以安全地忽略来自 macOS 的 bash 弃用警告,或者您可以将 export BASH_SILENCE_DEPRECATION_WARNING=1
添加到 ~/.bashrc` 以使其永久静音。
您正在使用的初始 brew 安装脚本已被弃用,您需要使用 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
。我浏览了那个脚本,我认为它实际上也与 zsh 兼容,但不是 100% 确定。这会将其设置为可供任何 shell 访问,只要您的 PATH
中有 /usr/local/bin
。 (export PATH="/usr/local/bin:$PATH"
在您的 ~/.zshrc
中,或 path+=/usr/local/bin
使用 zsh 特定的语法)。
如果你 运行 which zsh
你应该仍然看到一些输出;如果您的默认 shell 确实发生了一些变化,您可以使用 chsh -s /bin/zsh
.
将其改回
编辑:
我没注意到你说你有 M1 Mac。根据安装脚本,基于 ARM 的 Macs 上的 brew 前缀是 /opt/homebrew
(显然这是为了解决 /usr/local
中操作需要 sudo
的问题)。我没有新的 Mac 来测试,但是将 path+=/opt/homebrew/bin
添加到 ~/.zshrc
的新文件应该可以解决问题。
cd /opt/homebrew/bin/
PATH=$PATH:/opt/homebrew/bin
cd
touch .zshrc
echo export PATH=$PATH:/opt/homebrew/bin >> .zshrc
运行 在终端中按顺序执行命令,您将编辑路径并创建丢失的 .zshrc 文件,将路径导出到这个新文件。
现在您应该可以使用:
brew doctor
它应该说:“您的系统已准备好酿造。”
这对我有帮助:
将 Homebrew 添加到 ~/.zprofile 中的 PATH:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
将自制程序添加到对我有用的路径
我遇到了同样的问题并通过以下步骤解决了:
- 从终端,命令
sudo vi ~/.zshrc
- 进入插入模式(在键盘上输入 I)然后粘贴
export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"
- 键入
:wq!
写入并退出 vim。
- 关闭终端。
- 重新打开终端并输入
brew
以确认它正在运行。
如果问题仍然存在:
默认情况下,Homebrew 在这些目录中安装了一些包:
/usr/local/bin/brew , /usr/local/share/doc/homebrew.
值得检查 HomeBrew 是否在其中。要在 Mac 上打开 finder,command + shift + G。如果您无法找到它,您可能需要重新安装它。
我正在使用 Macbook,macOS Big Sur - 版本 11.6.4
我正在尝试将 Homebrew 安装到我的 M1 Mac。我的默认 shell 是 zsh,我想保持这种状态。我运行:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
并且它说安装成功但是在尝试命令 brew doctor
和 brew help
之后都返回了错误 zsh: command not found: brew
我不太了解 shell 或编程,所以我可以尝试的任何事情都会有所帮助。
然后我正要尝试 un/re 安装它 运行:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
但是出现警告以迁移到此命令:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"
这让我相信它可能只是位置错误 shell?
可以安全地忽略来自 macOS 的 bash 弃用警告,或者您可以将 export BASH_SILENCE_DEPRECATION_WARNING=1
添加到 ~/.bashrc` 以使其永久静音。
您正在使用的初始 brew 安装脚本已被弃用,您需要使用 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
。我浏览了那个脚本,我认为它实际上也与 zsh 兼容,但不是 100% 确定。这会将其设置为可供任何 shell 访问,只要您的 PATH
中有 /usr/local/bin
。 (export PATH="/usr/local/bin:$PATH"
在您的 ~/.zshrc
中,或 path+=/usr/local/bin
使用 zsh 特定的语法)。
如果你 运行 which zsh
你应该仍然看到一些输出;如果您的默认 shell 确实发生了一些变化,您可以使用 chsh -s /bin/zsh
.
编辑:
我没注意到你说你有 M1 Mac。根据安装脚本,基于 ARM 的 Macs 上的 brew 前缀是 /opt/homebrew
(显然这是为了解决 /usr/local
中操作需要 sudo
的问题)。我没有新的 Mac 来测试,但是将 path+=/opt/homebrew/bin
添加到 ~/.zshrc
的新文件应该可以解决问题。
cd /opt/homebrew/bin/
PATH=$PATH:/opt/homebrew/bin
cd
touch .zshrc
echo export PATH=$PATH:/opt/homebrew/bin >> .zshrc
运行 在终端中按顺序执行命令,您将编辑路径并创建丢失的 .zshrc 文件,将路径导出到这个新文件。
现在您应该可以使用:
brew doctor
它应该说:“您的系统已准备好酿造。”
这对我有帮助:
将 Homebrew 添加到 ~/.zprofile 中的 PATH:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile eval "$(/opt/homebrew/bin/brew shellenv)"
将自制程序添加到对我有用的路径
我遇到了同样的问题并通过以下步骤解决了:
- 从终端,命令
sudo vi ~/.zshrc
- 进入插入模式(在键盘上输入 I)然后粘贴
export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"
- 键入
:wq!
写入并退出 vim。 - 关闭终端。
- 重新打开终端并输入
brew
以确认它正在运行。
如果问题仍然存在:
默认情况下,Homebrew 在这些目录中安装了一些包: /usr/local/bin/brew , /usr/local/share/doc/homebrew.
值得检查 HomeBrew 是否在其中。要在 Mac 上打开 finder,command + shift + G。如果您无法找到它,您可能需要重新安装它。
我正在使用 Macbook,macOS Big Sur - 版本 11.6.4