$ PATHは(osx)から値をどこで取得しますか?

$ PATHは(osx)から値をどこで取得しますか?

$ PATHを入力すると、値のリストにPythonフレームワークの一部/etc/pathsとそのリンクも表示されます。/etc/paths.dこれらはどこで読まれますか?

ベストアンサー1

コンピュータにログインすると、loginwindow.appは、、、、、および$HOMEを含むデフォルトの$SHELL環境を設定します。デーモンまたはエージェントを起動して環境を変更することもできます。あるいは、拡張によって通常、PATH変数はカーネル内のハードコーディングされたPATH変数に設定されます。$TMPDIR$LOGNAME$USER$PATHlaunchd

sysctl user.cs_path
user.cs_path: /usr/bin:/bin:/usr/sbin:/sbin

ターミナルエミュレータを起動すると、デフォルトで呼び出されますloginlogin -pf <yourname>まだ設定されていない環境変数のみが設定されます(参考資料を参照man login)。

その後、シェルは$SHELL呼び出しからそのファイルを読み込みます。設定されたPATH変数を取得、読み込み、現在のPATHから重複項目を削除し、PATH変数を設定どおりに並べ替え、その中のファイルを読み込み、そのファイルをPATH変数に追加し、元のPATHへの任意のパスを追加してください。追加されていない../etcpath_helperpath_helper/etc/paths/etc/paths/etc/paths.d

最後に、$ SHELLはホームディレクトリにあるログインシェルに対応するrcファイルを読み込みます。

おすすめ記事