0

我有我的 bashrc 文件/opt/distra/bashrc并尝试在LD_LIBRARY_PATH变量中添加路径,但在关闭终端并重新启动并重新启动 Linux 机器后更改没有反映。

操作系统:Oracle Linux 7.7

我的 bashrc 看起来像这样

# User specific environment variables 
export DISTRA_USER=$USER
export M2_HOME=/opt/maven/apache-maven-3.0.5
export JAVA_HOME=/usr/java/default
export BT3_HOME=/opt/distra/bt3
export LD_LIBRARY_PATH=/opt/oracle/product/18c/dbhomeXE/lib:/opt/distra/executive/current/lib:/opt/mqm/java/lib64

我正在尝试添加:/opt/mqm/java/lib64LD_LIBRARY_PATH变量

. /opt/distra/bashrc每次启动机器时我都必须这样做。一定有某种我不知道的方法可以永久地进行更改。

我该怎么做才能使更改永久化?

编辑 :

我的主目录中的 .bashrc 有以下几行:

# Source global definitions
if [ -f /etc/bashrc ]; then
    . /etc/bashrc
fi

# Source distra definitions
if [ -f /opt/distra/bashrc ]; then
        . /opt/distra/bashrc
fi

我的主目录中的 .bash_profile 有以下几行:

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin:$HOME/scripts
export PATH
4

1 回答 1

0

行“导出 LD_LIBRARY_PATH=/opt/oracle/product/18c/dbhomeXE/lib:/opt/distra/executive/current/lib**:/opt/mqm/java/lib64**”

看起来很假,因为:1)LD_LIBRARY_PATH 应该只包含目录路径,而不是单独的库归档路径;2) 由于该条目没有被引用,shell 通配符“**”将被扩展;我不认为这是你真正想要的。尝试:

export LD_LIBRARY_PATH='/opt/oracle/product/18c/dbhomeXE/lib:/opt/distra/executive/current/lib:/opt/mqm/java/lib64'

即,将值括在单引号中。这在这里确实没有必要,但是单引号将使您远离带有嵌入空格的目录,而不是您应该在 Linux 机器上实际使用这些目录。

于 2021-05-06T16:56:50.123 回答