在Linux上,如何将一个目录添加到$PATH,以便在不同的会话中保持持久性?
背景
我试图添加一个目录到我的路径,所以它将永远在我的Linux路径。我试过了:
export PATH=$PATH:/path/to/dir
这是有效的,但是每当我退出终端并启动一个新的终端实例时,这个路径就丢失了,我需要再次运行导出命令。
我怎么做才能永久设置它呢?
在Linux上,如何将一个目录添加到$PATH,以便在不同的会话中保持持久性?
背景
我试图添加一个目录到我的路径,所以它将永远在我的Linux路径。我试过了:
export PATH=$PATH:/path/to/dir
这是有效的,但是每当我退出终端并启动一个新的终端实例时,这个路径就丢失了,我需要再次运行导出命令。
我怎么做才能永久设置它呢?
当前回答
您可以将这一行添加到控制台配置文件(例如,.bashrc或.profile)。
其他回答
您可以将这一行添加到控制台配置文件(例如,.bashrc或.profile)。
对于Bash,可以将导出声明放在~/.bashrc中。例如,我的.bashrc包含这一行:
export PATH=/var/lib/gems/1.8/bin:/home/ash/.bin:$PATH
永久地添加到PATH变量中
全球:
echo "export PATH=$PATH:/new/path/variable" >> /etc/profile
本地(仅针对当前用户):
echo "export PATH=$PATH:/new/path/variable" >> ~/.profile
对于全局,请重新启动。对于本地,请重新登录。
例子
之前:
$ cat /etc/profile
#!/bin/sh
export PATH=/usr/bin:/usr/sbin:/bin:/sbin
后:
$ cat /etc/profile
#!/bin/sh
export PATH=/usr/bin:/usr/sbin:/bin:/sbin
export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/new/path/variable
或者你可以编辑文件“profile”:
$ cat /etc/profile
#!/bin/sh
export PATH=/usr/bin:/usr/sbin:/bin:/sbin:/new/path/variable
另一种方式(感谢gniourf_gniourf):
echo 'PATH=$PATH:/new/path/variable' >> /etc/profile
你不应该在这里使用双引号!回声的出口 = $ PATH: /新/ PATH /变量”……顺便说一下,export关键字 是很可能无用的路径变量是很可能已经 标记为导出。——gniourf_gniourf
在/etc/profile中添加脚本[name_of_script].shD文件夹用的行:
export PATH=$PATH:/dir
/etc/profile中的每个脚本D文件夹在登录时由/etc/profile自动执行。
可以通过以下命令直接添加:
echo 'export PATH=$PATH:/new/directory' >> ~/.zshrc
source ~/.zshrc