如何在不从系统注销的情况下在 linux mint 中重新加载 PATH

How to reload PATH in linux mint without logging out from system

我将所有 env 变量保存在 ~/.profile 文件中,因此当我打开新文件时它们会被导出 shell。最近我不得不修改其中一个 PATH 部分,从 Hadoop 2.6.0 降级到 Hadoop 2.3.0。所以,我的 .profile 看起来像那样(我注释掉了旧的 HADOOP_INSTALL):

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export GRADLE_HOME=/home/kranach/tools/gradle-2.2.1
#export HADOOP_INSTALL=/home/kranach/hadoop-2.6.0
export HADOOP_INSTALL=/home/kranach/hadoop-2.3.0
export M2_HOME=/home/kranach/tools/apache-maven-3.2.5
export PIG_HOME=/home/kranach/tools/pig-0.14.0
#export HIVE_HOME=/home/kranach/tools/apache-hive-0.14.0-bin/
export HIVE_HOME=/home/kranach/tools/hive12
export HBASE_HOME=/home/kranach/tools/hbase-0.98.10-hadoop2

PATH="$PATH:$GRADLE_HOME/bin:$HADOOP_INSTALL/bin:$HADOOP_INSTALL/sbin:$M2_HOME/bin:$PIG_HOME/bin:$HIVE_HOME/bin:$HBASE_HOME/bin"

进行此更改后,我关闭并重新打开终端但没有任何效果 - PATH 仍然包含 hadoop 2.6.0 条目。我尝试做 source ~/.profile,但它只将新条目附加到 PATH,而没有替换旧条目。我应该怎么做才能使 PATH 的更改可见,而不必关闭所有 windows 并重新登录?

您不需要重新启动计算机。重启 X CTRL+ALT+Backspace

~/.profile 仅在登录时读取。当您开始一个新的 shell 时,它显示为 ~/.bashrc

有关详细信息,请参阅 https://www.gnu.org/software/bash/manual/html_node/Bash-Startup-Files.html