我可以从我不是root的机器上更改$ PATH吗?

时间:2017-03-03 18:07:29

标签: linux bash unix

我有一台Red Hat Linux机器,我不是root用户。

在我的主文件夹中,我将其添加到我的.bash_profile.bashrc

export PATH=/path/to/my/directory:$PATH

然后,我运行了./.bash_profile./.bashrc

但是,$PATH未更新。

知道为什么会这样吗?

2 个答案:

答案 0 :(得分:2)

当你运行这些文件时 - 就像你通常执行任何脚本一样 - 它们是在一个单独的shell中执行的,并且对shell的状态(工作目录,变量等)的更改是当那个外壳退出时丢失了。如果目标是更改您正在操作的交互式shell的状态,则需要它们。

语法如下:

source .bashrc  # on extended shells such as bash only
. .bashrc       # or on any POSIX-compliant shell

空间至关重要; ./.bashrc将尝试使用自己的解释器运行.bashrc作为可执行文件,而. .bashrc使用http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_18中记录的.命令来执行当前解释器中文件的内容。

答案 1 :(得分:0)

您需要获取.bash_profile来获取当前shell中的更改。