如何修改 Homebrew 的 PATH?

Posted

技术标签:

【中文标题】如何修改 Homebrew 的 PATH?【英文标题】:How to modify PATH for Homebrew? 【发布时间】:2012-05-07 19:12:41 【问题描述】:

尝试安装 ruby​​ 1.9.3,请阅读我需要先安装自制软件。 Ran brew doctor,它给了我一堆警告。其中之一是:

警告:/usr/bin 出现在 /usr/local/bin 之前 这意味着 将使用系统提供的程序,而不是由 自制。两条路径都存在以下工具:

easy_install
easy_install-2.6

考虑修改您的 PATH 以使 /usr/local/bin 领先于 /usr/bin 在你的 PATH 中。

一个人如何做到这里所要求的?

【问题讨论】:

@AristotlePagaltzis's answer on SuperUser 在我看来是最好的解决方案,允许您的系统应用程序继续使用/usr/bin,同时您选择性地符号链接 您要使用的 Homebrew 可执行文件,而不是 Apple 提供的版本,例如 Git。 @mrdavidjcole:fengd 没有回答这个问题? Stack Overflow 是一个编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参阅帮助中心的What topics can I ask about here。也许Super User 或Apple Stack Exchange 会是一个更好的提问地方。另见Where do I post questions about Dev Ops?。 【参考方案1】:

打开您的 /etc/paths 文件,将 /usr/local/bin 放在 /usr/bin 之上

$ sudo vi /etc/paths
/usr/local/bin
/usr/local/sbin
/usr/bin
/bin
/usr/sbin
/sbin

重启终端,@mmel

【讨论】:

进行此更改后重新加载环境或启动新终端。 不同意这一点 - 应该使用下面的答案 - 我认为时间机器等不会选择这个更改作为外部用户文件夹。 如果您的问题是 RVM 和 Homebrew 似乎都在争夺 .bash_profile 文件中的相同空间,这也是我找到的最佳解决方案。 我不会编辑 /etc/paths;相反,请使用其他地方描述的 .profile / .bash_profile 方法(例如,通过下面的 @avelis 回答或更偏执的方法,请参阅 SuperUser 上引用 AristotlePagaltzis 回答的第一条评论。 您可能想尝试使用 nano 终端文本编辑器而不是 via。我发现这更容易使用。 “sudo nano /etc/paths”而不是“sudo vi /etc/paths”。【参考方案2】:

有很多方法可以更新您的路径。 Jun1st 答案效果很好。另一种方法是将您的.bash_profile 扩充为:

export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH"

上面的行将/usr/local/bin/usr/local/sbin 放在您的$PATH 前面。一旦你 source 你的 .bash_profile 或启动一个新终端,你可以通过 echo'ing 来验证你的路径。

$ echo $PATH
/usr/local/bin:/usr/local/sbin:/Users/<your account>/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

一旦对再次运行$ brew doctor 的结果感到满意,就不会再产生错误了。

这篇博文帮助我解决了遇到的问题。 http://moncefbelyamani.com/how-to-install-xcode-homebrew-git-rvm-ruby-on-mac/

【讨论】:

@JanuszChudzynski 对于 Jun1st 的解决方案,您可能必须重新启动命令行会话才能看到更改。 自制日的最新版本:考虑设置您的 PATH,以便 /usr/local/bin 出现在 /usr/bin 之前。这是一个单行代码:echo export PATH="/usr/local/bin:$PATH" &gt;&gt; ~/.bash_profile。这基本上就是这个答案所暗示的。 但是我怀疑这是正确的方法。见下文: 更改前:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin 更改:echo export PATH="/usr/local/bin:$PATH &gt;&gt; ~/.bash_profile 更改后:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin 这意味着如果在 /usr/local/bin 中找不到命令,它可能会被搜索两次,然后才能在另一个路径中找到。我觉得改/etc/paths文件比较好 $ echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bash_profile 给了我 $PATH"' >> ~/.bash_profile -bash: $: command没找到 @rpeg 我敢肯定,如果您在网上搜索教程,就会有大量资源,但这是我所知道的。 linux.com/learn/tutorials/272346-bash-101-working-at-the-cli【参考方案3】:

只需在您喜欢的终端应用程序中运行以下行:

echo export PATH="/usr/local/bin:$PATH" >> ~/.bash_profile

重启终端并运行

brew doctor

问题应该解决

【讨论】:

如果您使用的是 zsh,请使用此命令 echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.zshrc【参考方案4】:

为避免不必要的重复,我将以下内容添加到我的 ~/.bash_profile

case ":$PATH:" in
  *:/usr/local/bin:*) ;;     # do nothing if $PATH already contains /usr/local/bin
  *) PATH=/usr/local/bin:$PATH ;;  # in every other case, add it to the front
esac

信用:https://superuser.com/a/580611

【讨论】:

【参考方案5】:

在 textEdit 中打开 bash 配置文件

打开 -e .bash_profile

编辑文件或粘贴在 PATH 前面 导出 PATH=/usr/bin:/usr/sbin:/bin:/sbin:/usr/local/bin:/usr/local/sbin:~/bin

保存并关闭文件

*打开.bash_profile直接打开textEdit>file>recent

【讨论】:

以上是关于如何修改 Homebrew 的 PATH?的主要内容,如果未能解决你的问题,请参考以下文章

ios ideviceintaller安装

PATH环境 变量

如何让 Mac OS 使用 Homebrew 安装的 python

如何修改tomcat deploy path

使用bat脚本添加JAVA_HOME和修改PATH

mac下 配置homebrew 和java home