我目前在OSX机器上安装了两个版本的同一可执行文件:一个位于usr / bin,另一个是Macports安装。当我运行时which
,终端将位置返回到usr / bin版本。是否有统一的方法来更改默认安装,还是每个应用程序都有自己的命令选项?
您需要修改PATH
环境变量。这是用于在Unix下搜索可执行文件的标准。
当Unix上的某物寻找具有相对路径(例如:clang
而不是/usr/bin/clang
)的应用程序时,PATH
将在:
字符上分割,然后按顺序搜索。
例如:如果你PATH
是/opt/local/bin:/bin:/usr/bin
那么clang
就会寻找/opt/local/bin/clang
,如果这是失踪,/bin/clang
等
从技术上讲,每个过程都有自己的方式来执行此操作-没有什么可以强迫他们遵循using的惯例$PATH
,但是这种方式已经存在了很长的时间,几乎可以完成所有操作。
另一个考虑因素是,每个进程都有自己的环境-其中PATH
包含一个副本。这包括启动,它负责UI和从中启动的任何应用程序。
所以,你可以在你的shell启动脚本(修改此.bash_profile
,.bashrc
,.profile
,等),但不会工作,如果,例如,在启动VIM或Emacs的GUI应用程序。
您还可以修改/etc/paths
或向添加文件/etc/paths.d
,这将成为所有内容(包括在Mac上启动的每个应用程序)的标准环境的一部分。(不过,您需要注销然后再登录,以使其渗透到系统的每个部分。)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句