我需要按特定顺序在 OSX 中设置 PATH 环境变量(即,将 /usr/local/bin 放在第一位)。
设置 PATH 变量的推荐方法似乎是文件/etc/paths
和/etc/paths.d
目录,它们可以工作但会自动重新排列指定路径的顺序。
我可以在我的程序中覆盖这一点.profile
,但我怀疑 Homebrew 等程序不会接收用户定义的环境变量
答案1
只是偶然发现Stackoverflow 上的这个答案,这似乎/etc/profile
可能是答案?——尽管这是特定于 shell 的……
答案2
为了确保从 GUI 启动的程序能够看到环境变量,您需要在 中设置它们~/.MacOSX/environment.plist
,它像所有文本 OSX plist 一样是一个 XML 文件。我个人使用这prefpane 来管理它。
请注意,仅在会话开始时读取 plist,因此您需要在设置后注销并重新登录或重新启动。
答案3
从终端运行的程序将会拾取$PATH
中的变量.profile
。