“导出”命令在哪个系统文件中进行更改?
我使用PPA安装了java-8。 之后我发出命令:
export JAVA_HOME=/usr/lib/jvm/java-8-oracle
我听说过这个命令会暂时改变。 但经过多次注销和登录后,下面的这些命令仍然有效(我认为由于export ...
命令):
java -version javac -version
但是当我发出命令:
export -p
它显示了一个环境变量列表,但在该列表中,不显示变量JAVA_HOME
。 而且,我想知道命令java
和javac
仍然有效!
有人能告诉我哪个文件export
命令进行了更改? 它们是暂时的还是永久的? 还有什么发生在上面? 请详细说明!
export
是一个shell命令。 它会影响当前运行的shell实例。 它不会在任何文件中进行更改。 这些更改是临时的,只有在shell退出之后才会生效。 在shell中设置新变量后,为了使其可用于从其启动的其他程序,您可以export
其export
。 看到:
- 终端,控制台,Shell和命令行之间有什么区别?
- `VAR = …`和`export VAR = …`有什么区别?
- set,export和env之间的区别是什么?我应该在何时使用它们?
java
和javac
可能有效,因为您使用PPA安装了Java,并且安装会自动将这些命令添加到PATH
( 什么是PATH环境变量以及如何添加它? )。 具体来说,只检查版本不应该需要JAVA_HOME
变量。 无论你是否设置它都没有区别。 显然JAVA_HOME
被其他应用程序使用 ,而不是Java编译器或JVM。