PATH環境変数に永続的にパスを追加する方法がわかりません。これは毎回異なる答えで。ホームディレクトリに.bash_profile
を作成しましたが、再起動するたびに、手動でexport
パスを再度作成する必要があります。
source ~/.bash_profile
が機能しません。
何が足りないのですか?
これは現在私の
export PATH="/usr/local/opt/python/libexec/bin:$PATH" export PATH="/usr/local/opt/openssl/bin:$PATH" export PATH="/Applications/XAMPP/xamppfiles/bin:$PATH" export LDFLAGS="-L/usr/local/opt/openssl/lib" export CPPFLAGS="-I/usr/local/opt/openssl/include"
コメント
回答
レイアウトしたものは、ユーザーの$PATH
にディレクトリを追加する適切な方法です。
ステップ1- ~/.bash_profile
~/.bash_profile
の編集を開始するには任意の場所を追加します$PATH
を修正したい。
export PATH="/usr/local/opt/python/libexec/bin:$PATH" export PATH="/usr/local/opt/openssl/bin:$PATH" export PATH="/Applications/XAMPP/xamppfiles/bin:$PATH"
ステップ2-ソース~/.bash_profile
このファイルに上記の編集を行った後、source
コマンドまたは.
「リロード」の表記と、現在のシェルのコンテキストでこのファイルに加えられた変更。
$ . ~/.bash_profile
-または-
$ source ~/.bash_profile
ステップ3-変更を評価する
編集を行ってソースを作成した後、変数。
$ echo $PATH | tr ":" "\n" /usr/local/bin /usr/bin /bin /usr/sbin /sbin /opt/X11/bin /Applications/Wireshark.app/Contents/MacOS /usr/local/sbin /Users/smingolelli/bin /usr/local/opt/go/libexec/bin /Applications/Visual Studio Code.app/Contents/Resources/app/bin /Users/smingolelli/projects/kubebuilder/kubebuilder_1.0.5_darwin_amd64/bin/
順序が重要であるため、最初に出現するディレクトリが最初に検索されます。バイナリが複数の場所に存在する場合、最初に検出される場所が使用されます。
また、このファイルの複数のソースは、同じ変更を追加し続けるという悪影響があることに注意してください。そのため、$PATH
を一貫した既知の初期状態に完全に設定してから、次の種類のコマンドで修正したい場合がよくあります。
export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin" export PATH="/some/new/dir:$PATH"
path_helperの使用
macOSには、$PATH
の管理を支援するヘルパーも含まれています。ここにあります/usr/libexec/path_helper
。
したがって、上記のようにベースを手動で作成する代わりに、$PATH
を使用できます。このスニペットを使用して、$PATH
の既知の適切な開始点を取得します。
[ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s)
これにより、初期化が行われます。 $PATH
なので、/etc/paths
および/etc/paths.d/
にリストされているディレクトリはすべて自動的に追加されます。
コメント
-
[ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s)
を使用してパスを初期化し、/etc/paths
と/etc/paths.d/
は自動的に追加されます。 - @nohillsideは理にかなっています。私は' macOSにこのヘルパーがあることに気づいていません。ありがとうございます。'をA 'に追加します。
- 持っています
/etc/profile
を見てください。'はあまり進んでいませんが、最初はisingPATH
はその一部です。 - 頭を上げて'、私の
~./bash_profile
は~/.bashrc
にルーティングするだけです。これは私が変更しなければならなかった実際のファイルです。 - @slm
[ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s)
2番目の部分を削除すると、source ~/.bash_profile
を複数回使用したときに最初の部分を使用した場合と同じ結果が得られます。たぶん、各部分が何をするのかについての説明が役立つでしょう。
echo $PATH
echo $PATH
の結果であるため、結果を明確かつ具体的に確認できました。申し訳ありませんが、' リクエストした情報が提供されていません!/Applications/XAMPP/xamppfiles/bin:/usr/local/opt/openssl/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin