![我在 OSX 上的 PATH 设置有什么问题?](https://linux22.com/image/1229941/%E6%88%91%E5%9C%A8%20OSX%20%E4%B8%8A%E7%9A%84%20PATH%20%E8%AE%BE%E7%BD%AE%E6%9C%89%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98%EF%BC%9F.png)
在某些时候,我在 OSX 上的 PATH 设置已损坏,这意味着启动使用“后台”控制台应用程序的 GUI 应用程序已损坏(迄今为止的示例是 MonoDevelop 和 Crossover Games)。
如果我从终端启动这两个(到目前为止)应用程序中的任何一个,例如
打开/Applications/MonoDevelop.app
它们工作正常,但从应用程序文件夹或 dock 启动时,它们找不到 sh、grep、dirname、uname 等内容。
作为参考,我的 PATH(从终端检查环境)设置为
PATH=/sw/bin:/sw/sbin:/Users/robcowell/ImageMagick-6.4.1/bin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Developer/Tools/Panda3D:/usr/X11R6/bin
所有这些都是在 Snow Leopard 10.6.2 上进行的
有人发现这个问题并且/或者知道如何解决吗?
答案1
请注意,当您在终端中查看 PATH 时,该 PATH 是由 shell 的任何启动文件的组合操作创建的。如果您使用的是 bash,则可能包括/etc/profile, /etc/bashrc, ~/.bash_profile, ~/.bashrc, ~/.profile
。使用“open”启动的应用程序作为终端 shell 的子进程运行,因此这些应用程序将具有相同的 PATH。
从 Finder 或 Dock 启动的应用程序不一定遵循相同的规则。
Stack Overflow 上的这个问题指向通过编辑更改应用程序路径的文档~/.MacOSX/environment.plist
。
至于你的 PATH 是如何被搞乱的,我首先要查看该文件。也许你的某个应用程序有帮助地为您编辑了该内容。