我在 OSX 上的 PATH 设置有什么问题?

我在 OSX 上的 PATH 设置有什么问题?

在某些时候,我在 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 是如何被搞乱的,我首先要查看该文件。也许你的某个应用程序有帮助地为您编辑了该内容。

相关内容