Answers:
通常,PATH
由登录您的程序(pam_env
是常见的贡献者)以与系统高度相关的方式将其设置为初始值,然后/etc/profile
和~/.profile
以及它们所包含的文件会继续修改该值。
删除任何对PATH
in的更改.bashrc
,环境设置不属于其中.bashrc
:请参阅.bashrc和.bash_profile之间的区别。
首先尝试以文本模式登录(例如使用ssh localhost
),因为会话启动比图形模式简单得多。
将set -x
在年初/etc/profile
和~/.profile
。外壳程序将在其标准错误流上打印出其行为的痕迹;PATH
在跟踪中查找分配。
没有优先级分配环境变量的概念:谁分配了最后的胜利。
您可以在任何位置设置PATH,而不仅仅是在.bashrc文件中。您的系统很可能具有文件, /etc/profile
并且/或者/etc/profile.local
为系统上的所有用户设置了默认路径。如果用户特定的更改或添加.profile
不在您的文件中,则可以在文件中进行设置.bashrc
,或者您可能只是在系统上使用默认设置。
如果您想做出仅影响您的更改,请.profile
使用以下格式将其放入您的帐户:
export PATH=/new/directory:$PATH
从而编辑当前路径,而不是完全重写它。
man bash
(或here)的“ INVOCATION”部分说明了.profile
和之间的区别.bashrc
,等等,以及登录或启动Shell时读取的其他文件以及读取顺序。