The environment is Ubuntu 18.
If I add one line JAVA_HOME="/usr/java11"
in /etc/environment, and execute source /etc/environment
, I can echo this environment variable:
echo $JAVA_HOME
/usr/java11
But if I try to get it from export, this variable is not in the list:
export | grep JAVA_HOME
--result is blank--
Then I use export $JAVA_HOME=/usr/java8
to export a variable (notice here is java8, not java 11), I can have:
export |grep JAVA_HOME
declare -x JAVA_HOME="/usr/java8"
Now, I can still echo $JAVA_HOME
as /usr/java11:
echo $JAVA_HOME
/usr/java11
Question: what is the difference of echo $variable
and export | grep JAVA_HOME
?
I try a simple python program, os.environ.get("JAVA_HOME")
returns "/usr/java8" from the export, not the echo.