OSXでPATH環境変数を永続的に設定する


142

OSXで環境変数を永続的に設定する方法に関するいくつかの回答を読みました。

最初に、私はこれを試しました、Linux / Unixで$ PATHを永続的に設定する方法は?と言うエラーメッセージが表示されたno such file and directoryので、~/.bash_profile代わりに試すことができると思いました~/.profileが、うまくいき ませんでした。

第二に、私はこのソリューションを見つけましたos xアプリケーションによって使用される$ PATHを設定する方法

〜/ .MacOSX / environment.plist

しかし、再びno such file and directoryエラーが発生しました。

新しいターミナルセッションを開くたびに変数を何度も設定する必要がないように、これらの変数を設定する方法が必要です。


〜/ .profileを作成するだけで、ほとんどの* nixシステムがファイルを認識し、ファイルが存在する場合はそれを使用できます。ただし、再起動が必要になる場合があります
trve.fa7ad

〜/ .MacOSX / environment.plistは非推奨です。
PierreALBARÈDE18年

回答:


258

に追加する必要があり/etc/pathsます。

リファレンス(私にとってはうまくいく):ここに


6
これはEl Capitanで動作する唯一のソリューションです。.bash_profileおよびを変更するよりも優れてい.profileます。
IgorGanapolsky 2015年

1
(コメントの)パスから要素を削除する方法を説明する追加されたリファレンスの回答にも賛成。
Amudhan

これはEL Capitanで機能しました。すべてのターミナルを閉じ、新しいターミナルを開いてエコー$ PATHを確認します。
Prem Ananth C

答えは5年前ですが、それでもまだ最も簡単で簡単な解決策です。回答ありがとうございます+参照
Rachit Magon

端末を「再起動」することを忘れないでください。
Neeraj Singh

27

$PATHmacOS の変数に影響を与える可能性のあるファイルがいくつかあることがわかりました(私にとっては10.11 El Capitanで動作します)。

  1. トップ投票の回答が言ったようにvi /etc/paths、これは私の観点から推奨されています。

  2. また/etc/paths.d、ファイルを含むディレクトリが$PATH変数に影響する可能性があることを忘れないでください。私の場合はgitmono-commandパスを設定します。あなたはできるls -l /etc/paths.dアイテムをリストにしてrm /etc/paths.d/path_you_dislike項目を削除します。

  3. 「bash」環境(デフォルトTerminal.appなど)を使用している場合は、~/.bash_profileまたはをチェックアウトする必要があり~/.bashrcます。そのファイルはまだない可能性がありますが、これらの2つのファイルはに影響を与えます$PATH

  4. 「zsh」環境(たとえば、Oh-My-Zsh)を使用している場合は、~./zshrc代わりにチェックアウトする必要があります~/.bash*

そして、すべてのターミナルウィンドウを再起動することを忘れないでくださいecho $PATH$PATH文字列になりますPATH_SET_IN_3&4:PATH_SET_IN_1:PATH_SET_IN_2

最初の2つの方法(/etc/pathsおよび/etc/path.d)は、/コンピューター内のすべてのアカウントに影響を与えるディレクトリにあり、最後の2つの方法(~/.bash*または~/.zsh*)は、アカウント設定にのみ影響を与える~/ディレクトリ(別名、/Users/yourusername/)にあることに注意してください。

続きを読む:Mac OS X:$ PATH変数の設定/変更-nixCraft


2
私は非常にあなたがあなたのマシン上の2つのユーザーアカウントを持っていた場合、その後、あなただけ例えば〜は/ dev /スクリプトの中でそれらのいずれかのスクリプトを追加する可能性があるため、いくつかのケースでは.bash_profileを編集するような
PeteW

私が気づかなかったことは、bashの代わりにzshを使用していることでした。ありがとう!
ライオネス

11

これを追加することもできます

if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

から~/.bash_profile~/.bashrcPATHにパスを追加できる場所を作成します。の例.

export PATH=$PATH:.

ありがとうございました。前のソリューションを使用しましたが、この方法を適用すると、DYLD_LIBRARY_PATH変数も永続的に設定できるようになりますか?
patti_jane 14年

はい、できるはずです。変更を確認したい場合は、ターミナルを閉じて. ~/.bashrc
再度

上記のコードをに追加. ~/.bash_profileし、ターミナルを再度開いてと入力しましたが. ~/.bashrc、そのようなファイルやディレクトリは表示されていません。
patti_jane 14年

作成する必要があります。上記の行は、存在する場合.bash_profileはロードする.bashrcように指示しています 。次に、空欄.bashrcに好きなものを追加できます。
オモマン2014年

どうもありがとう!質問しすぎですが、作成方法が適切に記載されているリンクを知っています.bashrcか?良いものを見つけることができませんでした。
patti_jane 14年

8

次のファイルを開くことができます。

/etc/profile
~/.bash_profile
~/.bash_login   (if .bash_profile does not exist)
~/.profile      (if .bash_login does not exist)

そして追加:

export PATH="$PATH:your/new/path/here"

7

MacOSのPATH環境変数に新しいパスを追加するには、/etc/paths.dディレクトリの下に新しいファイルを作成し、ファイルに設定する書き込みパスを追加します。端末を再起動します。あなたはチェックすることができますecho $PATHパスは、環境変数に追加されたかどうかを確認するプロンプトで。

例:変数に新しいパスを追加する/usr/local/sbinにはPATH

cd /etc/paths.d
sudo vi newfile

パスをに追加してnewfile保存します。

端末を再起動し、echo $PATH確認のために入力します


なぜこの回答が反対票を投じているのかはわかりません。これはパス変数を整理するための合理的で健全な方法のようです。非標準パス変数ごとに個別のファイルを作成するために、paths.dを使用しました。
p_q 2018

1

私は最初の方法を試し、リファレンスページを通過し、パス設定を十分に実行しましたが、echo $ PATHを実行したときにパスセットを実行しませんでした


1
ターミナルを閉じて再起動しましたか、それともsource新しい環境をロードするために呼び出しましたか?
Dom

yaa..restarted terminal..but PATH変数が再び存在しない
IgnitedMind

あなたはシェルとは何ですか?ps -p $$で確認してください。bashでない場合は、スタートアップファイルの名前が異なります。
PierreALBARÈDE18年

0

Macでパスを設定するには、2つの方法があります。

  1. 変数名のファイルを作成し、そのパスを/etc/paths.dの下に貼り付け、ファイルのソースをprofile_bashrcにします。
  2. パス変数を~/.profile_bashrcとしてエクスポート

    VARIABLE_NAME = $(PATH_VALUE)をエクスポート

ANDパスをソースします。そのシンプルで安定しています。

あなたはいずれかを設定することができますpath variableによって、Mac terminalまたはでlinuxも。

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