如何在Windows WSL Ubuntu上安装Homebrew,并修复“zsh:brew命令未找到”错误。

12

安装包含5个简单步骤:

首先,从主页的命令中安装homebrew本身:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

在那之后,按照这个页面的说明,将~/.bash_profile更改为~/.profile,因为我使用的是Ubuntu作为我的wsl发行版,我不得不执行以下命令:

test -d ~/.linuxbrew && eval $(~/.linuxbrew/bin/brew shellenv)
test -d /home/linuxbrew/.linuxbrew && eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)
test -r ~/.profile && echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.profile
echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.profile

但是现在,当我尝试运行brew时,会出现command not found错误。

2个回答

34
在wsl环境下,brew安装在/home/linuxbrew/.linuxbrew/这个位置,它不是路径的一部分。因此我们只需要将它添加到路径中就可以了。我使用的是zsh作为我的shell,所以我将以下内容添加到我的~/.zshrc文件中(在ubuntu文件系统中):
export BREW_HOME="/home/linuxbrew/.linuxbrew/bin"
export PATH="$PATH:$BREW_HOME"

这是正确的。让我省去了烦恼。 - Mysterio

0

如果您需要在不同的操作系统之间共享您的.zshrc文件,可以在您的zshrc文件中进行一些操作系统检查,以查看它是macOS还是linux/wsl:

case `uname` in
  Linux)
    ## add brew home to PATH in linux/WSL
    brew_home=/home/linuxbrew/.linuxbrew
    if [ -d "${brew_home}" ]; then
      export PATH=${brew_home}/bin:$PATH
    fi

    javac_loc=/usr/bin/javac
    if [ -x "$javac_loc" ]; then
      export JAVA_HOME=$(readlink -f $(dirname $(readlink -f $javac_loc)))
    fi
  ;;
  Darwin)
    ## Do macOS thing...
    export JAVA_HOME=$(/usr/libexec/java_home)
  ;;
esac


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接