我正在尝试更改 $JAVA_HOME 的值,而且我似乎找不到当前在哪个文件中设置它。我不记得上次我把它设置在哪里了。已经尝试过如何确定环境变量来自哪里?但我需要一个可以设置变量的文件列表。
答案1
您没有指定外壳。所以,我会假设bash
。下一个问题是:您是仅为您的用户设置还是在系统范围内设置?如果您仅为您的用户设置它,则运行:
grep JAVA_HOME ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc
如果您在系统范围内设置它,那么它可能会因发行版而异,但请尝试:
grep JAVA_HOME /etc/environment /etc/bash.bashrc /etc/profile.d/* /etc/profile
如果以上没有给出答案,你可以撒更大的网:
grep -r JAVA_HOME /etc
grep -r JAVA_HOME ~/
另请参阅中的建议如何确定环境变量来自哪里。
答案2
和zsh
:
zsh -xl
在bash
:
PS4='+$BASH_SOURCE> ' BASH_XTRACEFD=7 bash -xl 7>&2
这将模拟登录 shell 并显示已完成的所有操作(除了使用 重定向 stderr 的区域zsh
)以及当前正在解释的文件名。
JAVA_HOME
因此,您需要做的就是在该输出中查找。 (您可以使用该script
命令来帮助您存储该输出)。