为什么我的 $PATH 没有被调用的 bash 继承?

为什么我的 $PATH 没有被调用的 bash 继承?

我在 AIX 系统上工作,没有管理员权限。它安装了多个 shell,默认为tcsh.我不允许更改登录 shell。通常我从 开始我的会话exec bash。问题是我没有继承$PATH我在tsch.第一个奇怪的事情是$PATH,当我这样做时,my 中的一些条目是重复的exec bash。另一个奇怪的事情是,当我这样做exec bash --norc时,source .bashrc一切都很好 - 我从 tcsh 获取路径并从我的.bashrc.

我已经尝试完全注释掉我的.bashrc内容,但它没有给出任何结果 - 我仍然没有得到$PATH来自tcsh.似乎系统范围的 /etc/profile 正在操纵我的$PATH.我尝试运行exec bash --noprofile,但我仍然看到脚本引入的更改/etc/profile(我无法控制)。

所以最后也许有人在我的调查中发现了一个缺陷,并可以告诉我如何使用 inhered 调用 bash $PATH,或者可以建议一种无需阅读全局配置脚本即可实现的方法?

(我也在超级用户上发布了这个问题,我不确定重复问题是否可以,但我在那里没有得到答案,所以到底是什么......)

答案1

如果这样做source .bashrc给了您想要的环境,那么您缺少的是交互式登录 shell。要以bash这种方式工作,只需运行exec bash --login或短exec bash -l

相关内容