現在、OSXマシンに同じ実行可能ファイルの2つのバージョンがインストールされています。1つはusr/binにあり、もう1つはMacportsインストールです。 which
を実行すると、ターミナルは場所をusr/binバージョンに戻します。デフォルトのインストールを変更するための統一された方法はありますか、それともすべてのアプリケーションにこれに対する独自のコマンドオプションがありますか?
PATH
環境変数を変更する必要があります。これは、Unixで実行可能ファイルを検索するために使用される標準です。
Unix上の何かが相対パス(例:/usr/bin/clang
ではなくclang
)で指定されたアプリケーションを探すとき、PATH
は:
文字で分割されます。その後、順番に検索しました。
例:PATH
が/opt/local/bin:/bin:/usr/bin
の場合、clang
は/opt/local/bin/clang
を検索し、それがない場合は/bin/clang
などを検索します。
技術的には、すべてのプロセスにこれを行う独自の方法があります。$PATH
を使用する規則に従うように強制するものはありませんが、ほとんどすべてが行うのに十分長い間その方法でした。
もう1つの考慮事項は、すべてのプロセスに独自の環境があることです。これには、PATH
のコピーが含まれています。これには、UIとそこから起動されるアプリケーションを担当するlaunchdが含まれます。
したがって、シェルのinitスクリプト(.bash_profile
、.bashrc
、.profile
など)でこれを変更できますが、たとえば、vimまたはemacsをとして起動した場合は機能しません。 GUIアプリケーション。
/etc/paths
を変更したり、ファイルを/etc/paths.d
に追加したりすることもできます。これにより、Macで起動するすべてのアプリケーションを含むすべての標準環境の一部が形成されます。 (ただし、システムのすべての部分に浸透させるには、ログアウトしてから再度ログインする必要があります。)
PATH
変数は、コマンドの場所を定義します。
この変数は、/etc/paths
ファイルで変更できます。 /usr/bin
が他の人よりも前にあることを確認する必要があります。