Linux 通过终端在/etc/profile设置全局变量,关闭并重新开启终端后,变量为空?

Linux下,使用root权限,在/etc/profile里设置了全局变量"ORACLE_HOME",然后执行source /etc/profile,$ORACLE_HOME变量生效,可正常打印。

# /etc/profile 文件
...
export ORACLE_HOME=/opt/instantclient

但关闭终端并重新打开终端,使用echo $ORACLE_HOME时,值却为空了,需要重新执行source /etc/profile,才能生效。

请问这是什么原因该如何处理,才能永久的设置全局变量。

阅读 6.1k
2 个回答

可以放在/etc/bash/bashrc里面,这个属于系统级别的。或者在.bashrc中加入source /etc/profile。

在Linux的世界里,要时刻注意,“你的一举一动可能会影响到别人”,所以,尽量不要修改类似/etc/profile这类全局配置文件,尽量做最小化配置,即你的配置仅对你个人生效,SO,ORACL_EHOME=/opt/instantclient移动到${home}/.bashrc文件中试试...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题