在Linux上,如何将一个目录添加到$PATH,以便在不同的会话中保持持久性?

背景

我试图添加一个目录到我的路径,所以它将永远在我的Linux路径。我试过了:

export PATH=$PATH:/path/to/dir

这是有效的,但是每当我退出终端并启动一个新的终端实例时,这个路径就丢失了,我需要再次运行导出命令。

我怎么做才能永久设置它呢?


当前回答

最简单的方法是,

PATH="<directory you want to include>:$PATH"

在主目录下的。bashrc文件中。

即使你关闭终端或重启电脑,它也不会被重置。它是永久性的。

其他回答

本地用户可在CentOS或redhat Linux (RHEL)上使用:

echo $"export PATH=\$PATH:$(pwd)" >> ~/.bash_profile

这将当前目录(或者您可以使用另一个目录)添加到PATH。这使它成为永久的,但它在下一次用户登录时生效。

如果你不想重新登录,那么你可以使用:

source ~/.bash_profile

这将重新加载#用户特定环境和启动程序。该注释出现在.bash_profile文件中。

您需要将其添加到~/。Profile或~/。bashrc文件。(

export PATH="$PATH:/path/to/dir"

取决于你在做什么,你也可能想要符号链接到二进制文件:

cd /usr/bin
sudo ln -s /path/to/binary binary-name

注意,这将不会自动更新会话剩余部分的路径。要做到这一点,你应该运行:

source ~/.profile 
or
source ~/.bashrc

Zues77的想法是正确的。操作人员没有说“我怎么才能破解这个?”OP想知道如何永久地附加到$PATH:

sudo nano /etc/profile

这是为所有东西设置的地方,也是为所有需要$PATH的东西更改它的最佳位置。

我认为最优雅的方式是:

把这个加到~中。/ bashrc文件(: If [-d "new-path"];然后 = $ PATH:新路径 fi * ~ / . bashrc *来源

(Ubuntu)

添加导出命令的文件取决于您是处于登录模式还是非登录模式。

如果您处于登录模式,您要查找的文件是/etc/bash或/etc/bash.bashrc。

如果处于非登录模式,则要查找文件/。Profile或/.profiles.d目录下的文件

上面提到的文件就是系统变量所在的地方。