nan*_*itv 5 macos environment-variables macos-mojave
我正在使用Mac OS Mojave(10.14.3)。我在~/.bash_profile和中都设置了环境变量,
然后~/.bashrc又运行了~/.bash_profile和~/.bashrc。然后,在同一终端中,我可以看到设置的值(使用printenv),但是如果我打开一个新终端,则看不到先前设置的env变量。
请给一些建议。
这适用于 OS X 10.14“Mojave”:
第 1 步:转到您的$HOME/Library/LaunchAgents目录并创建setenv.MY_VAR.plist包含以下内容的文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>setenv.MY_VAR</string>
<key>ProgramArguments</key>
<array>
<string>/bin/launchctl</string>
<string>setenv</string>
<string>MY_VAR</string>
<string>SOME_VALUE_FOR_MY_VAR</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
请注意您的文件名和文件中的条目匹配。
第 2 步:运行launchctl load ~/Library/LaunchAgents/setenv.MY_VAR.plist或 - 重新启动系统。
第 3 步:重新启动您的终端应用程序。
第4步:检查VAR是存在的:env。它应该给你:MY_VAR=SOME_VALUE_FOR_MY_VAR。
如果你想要做更多的变化,首先做的launchctl unload...不是launchctl load...一次。
这是每个用户设置。如果要为所有用户设置,请尝试在/Library/LaunchDaemons.