HomebrewのPATHを変更する方法?


150

ruby 1.9.3をインストールしようとすると、最初に自作をインストールする必要があることを読んでください。Brew Doctorを実行すると、たくさんの警告が出ます。その1つは次のとおりです。

警告:/ usr / binは/ usr / local / binの前に発生しますこれは、Homebrewが提供するプログラムの代わりにシステム提供のプログラムが使用されることを意味します。次のツールは両方のパスにあります。

easy_install
easy_install-2.6

/ usr / local / binがPATHの/ usr / binよりも前になるようにPATHを修正することを検討してください。

ここで求めていることをどのように行うのですか?


1
@AristotlePagaltzisSuperUserに対する回答は、私の意見では最良の解決策を提供し、GitなどのAppleが出荷するバージョンの代わりに使用するHomebrew実行可能ファイルを選択的にシンボリックリンクし/usr/binながら、システムアプリを引き続き使用できるようにします。

@mrdavidjcole:fengdはその質問に答えませんでしたか?
fotinsky 2015

Stack Overflowは、プログラミングと開発に関する質問のためのサイトです。この質問はプログラミングや開発に関するものではないため、トピックから外れているようです。ヘルプセンターのここ質問できるトピックを参照してください。おそらく、スーパーユーザーまたはApple Stack Exchangeのほうがよいでしょう。また、Dev Opsに関する質問どこに投稿すればよいですか?
jww

回答:


299

/ etc / pathsファイルを開き、/ usr / bin /の上に/ usr / local / binを置きます

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

そしてターミナル再起動します、@ mmel


9
この変更を行った後、環境を再ロードするか、新しい端末を起動します。
2013

4
これに同意しない-以下の回答を使用する必要があります-タイムマシンなどはこの変更をピックアップしないため、ユーザーフォルダーの外にあると思います。
Ian Warner

これは、RVMとHomebrewの両方が.bash_profileファイルの同じ領域をめぐって競合しているように見えるという問題がある場合、私が見つけた最良の解決策でもあります。
MCB

/ etc / pathsは編集しません。代わりに、/ .bash_profileをする方法は他の場所に記載の.profileを使用する(例えば、下記以上の偏執的なアプローチのための@avelisによって答えは、スーパーユーザにAristotlePagaltzisの答えを参照する最初のコメントを参照してください。
rholmes

1
viaの代わりにnanoターミナルテキストエディターを使用してみてください。これは使いやすいことがわかりました。「sudo vi / etc / paths」の代わりに「sudo nano / etc / paths」。
tbradley22 2014

78

パスを更新するには多くの方法があります。6月1日の回答はうまくいきました。別の方法はあなた.bash_profileが持っていることを増強することです:

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

場所の上/usr/local/bin/usr/local/sbinあなたの前の線$PATHソース取得する.bash_profileか、新しい端末を起動したら、エコーしてパスを確認できます。

$ 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/


2
@JanuszChudzynski Jun1stのソリューションでは、変更を確認するためにコマンドラインセッションを再起動する必要がある場合があります。
avelis 2012年

Homebrew dayの最近のバージョン:/ usr / local / binが/ usr / binの前にくるようにPATHを設定することを検討してください。これがワンライナーです:echo export PATH="/usr/local/bin:$PATH" >> ~/.bash_profile。これは基本的にこの答えが示唆することです。
nacho4d 2013年

しかし、私はそれが正しい方法であることを疑います。以下を参照してください:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin変更前:変更:変更echo export PATH="/usr/local/bin:$PATH >> ~/.bash_profile後:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin これは、コマンドが/ usr / local / binで見つからない場合、別のパスで見つける前に2回検索される可能性があることを意味します。/etc/pathsファイルを変更した方がいいと思います
nacho4d

$ echo 'export PATH = "/ usr / local / bin:$ PATH"' >>〜/ .. bash_profileは$ PATHを返します ">> >> //。bash_profile -bash:$:コマンドが見つかりません
Mamba

@rpegチュートリアルをウェブで検索すると、リソースが豊富にあると思いますが、ここに私が知っているものがあります。linux.com/learn/tutorials/272346-bash-101-working-at-the-cli
avelis 2015年

20

お気に入りのターミナルアプリケーションで次の行を実行するだけです。

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

端末を再起動して実行します

brew doctor

問題を解決する必要があります


3
zshを使用している場合は、次のコマンドを使用します。echo 'export PATH = "/ usr / local / sbin:$ PATH"' >>〜/ .zshrc
kareem

1

textEditでbashプロファイルを開く

open -e .bash_profile

ファイルを編集するか、PATHエクスポートの前に貼り付けますPATH = / usr / bin:/ usr / sbin:/ bin:/ sbin:/ usr / local / bin:/ usr / local / sbin:〜/ bin

ファイルを保存して閉じます

* .bash_profileを開くには、textEdit>ファイル>最近を開きます


0

不必要な重複を避けるために、次のコードを〜/ .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

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.