如何$PATH
在 Ubuntu 中添加目录并使更改永久生效?
答案1
使用 ~/.profile 设置 $PATH
中设置的路径.bash_profile
只能在 bash 登录 shell ( ) 中设置bash -l
。如果您将路径放入其中,.profile
它将可用于您的整个桌面会话。这意味着甚至 metacity 也会使用它。
例如~/.profile
:
if [ -d "$HOME/bin" ] ; then
PATH="$PATH:$HOME/bin"
fi
顺便说一句,您可以通过查看进程的环境来检查其 PATH 变量/proc/[pid]/environ
(将 [pid] 替换为 中的数字ps axf
)。例如使用grep -z "^PATH" /proc/[pid]/environ
笔记:
bash
因为登录 shell 不会解析.profile
是否.bash_profile
存在.bash_login
。来自man bash
:
它按照顺序查找 ~/.bash_profile、~/.bash_login 和 ~/.profile,然后从第一个存在且可读的命令中读取并执行命令。
查看下面的答案有关 的信息.pam_environment
,或.bashrc
用于交互式非登录 shell,或者通过将脚本放入/etc/profile.d/
或使用/etc/X11/Xsession.d/
来影响显示管理器会话,为所有用户全局设置该值。
答案2
在您的主目录中编辑.bashrc
并添加以下行:
export PATH="/path/to/dir:$PATH"
您需要获取您的.bashrc
或注销/登录(或重新启动终端)以使更改生效。要获取您的.bashrc
,只需输入
$ source ~/.bashrc
答案3
建议定义永久的地方,全系统适用于所有用户的环境变量位于:
/etc/environment
(这是默认值PATH
的定义)
无论晴天还是雨天,这都可以在桌面或控制台、gnome 终端或 TTY 上运行 ;)
要编辑,请打开终端并输入:
sudoedit /etc/environment
sudo
(或者使用您最喜欢的文本编辑器打开该文件)
要使其在无需重启的情况下运行,请运行. /etc/environment
或source /etc/environment
。由于此文件只是一个简单的脚本,它将运行并将新路径分配给PATH
环境变量。要检查运行env
并查看PATH
列表中的值。
有关的:
答案4
对于完全新手(比如我)来说,我们更习惯使用 GUI:
- 打开你的
$HOME
文件夹。 - 去看法→显示隐藏文件或按Ctrl+ H。
- 右键单击
.profile
并单击使用文本编辑器打开。 - 滚动到底部并添加
PATH="$PATH:/my/path/foo"
。 - 节省。
- 注销并重新登录以应用更改(让 Ubuntu 实际加载
.profile
)。