man path_helper
このことは私を夢中にさせました。私はzshを使用していますが、/etc/zshenvで見つけました。
# system-wide environment settings for zsh(1)
if [ -x /usr/libexec/path_helper ]; then
eval `/usr/libexec/path_helper -s`
fi
path_helper(8) には実際に役立つ目的があると思います。Apple からの通常の非常にあいまいな sysadmin 情報によって否定されます。私のように macports を使用している場合でも、シェルの init ファイルの /etc で path_helper(8) を探してください。それは役立つかもしれません。
それ以外の場合は、次の場所で環境を設定してみてください。
/etc/launchd.conf
もちろん、man ページは決定的なものではありません。http://developer.apple.com は優れたドキュメントですが、通常は正確なメモリ位置ではなく、より良いマニュアル ページが必要です。
最後に、次のような loginwindow でそれらを設定できます。
~/.MacOSX/environment.plist
さて、私には、これを行う方法がいくつかあるのは奇妙に思えますが...まあ、それは奇妙です。彼らは適切な init の置き換えを行いました。それはそれらすべてを支配する 1 つのプロセスですが、いいえ、多くのジョブはその外で実行されます。幸運を。これらの方法のいずれかを使用して、GUI に $VAR を取得できるはずです。
ああ、http://developer.apple.com/library/mac/#qa/qa1067/_index.html。
OSX にはさまざまなセッションとドメインがあります。正確には、
man launchctl
セッション:
現在知られているセッション タイプには、Aqua、LoginWindow、Background、StandardIO、および System が含まれます。
ドメイン:
指定されたドメインで *.plist で終わる plist(5) ファイルを探します。有効なドメインには、「system」、「local」、「network」、および「all」が含まれます。
読んでみると納得です。
うーん。launchd はいつも私に届きます。
編集:
https://serverfault.com/questions/16355/how-to-set-global-path-on-os-x/277034#277034
/etc/launchd.conf がファイルのパスを取得する場所であると再び主張します。
だから私は走った
opensnoop -g -c -f /etc/launchd.conf
ターミナル、iterm、サファリ、キーチェーン... nadaを開きました。誰もそのファイルを開きませんでした。
編集:ただし、launchdでGoogleビデオを見た後、私は走りました
launchctl export
私に見せてくれた
PATH="/usr/bin:/bin:/usr/sbin:/sbin"; export PATH;
TMPDIR="/var/folders/YH/YHFe3+5RHmuxft5hr1XZTk+++TI/-Tmp-/"; export TMPDIR;
SHELL="/opt/local/bin/zsh"; export SHELL;
HOME="/Users/kb"; export HOME;
USER="kb"; export USER;
LOGNAME="kb"; export LOGNAME;
DISPLAY="/tmp/launch-dcQkBh/org.x:0"; export DISPLAY;
SSH_AUTH_SOCK="/tmp/launch-czhyqj/Listeners"; export SSH_AUTH_SOCK;
Apple_PubSub_Socket_Render="/tmp/launch-TI7lbI/Render"; export Apple_PubSub_Socket_Render;
sudo launchctl export
これにより、コンテキストがユーザーとしての Aqua コンテキストではなく、システム コンテキストに変更され、返されました。
PATH="/usr/bin:/bin:/usr/sbin:/sbin"; export PATH;
したがって、コンテキストは本当に重要です。つまり、コマンドが実行されるセッションと同様に重要です。
このツールのドキュメント、この init 置換、Apple で最も重要なデーモン、それらすべてを支配する 1 つのデーモンは、お粗末です。小便。貧しい。