linux - 无法 cd 到 ~/.bashrc 中设置的环境变量,尽管它似乎存在(Scientific Linux 6.10)
问题描述
我有一个奇怪的问题。我有一个在 ~/.bashrc 中导出的变量。
export NCARG_ROOT=/usr/local/ncl
在终端中,我可以回显变量,它会正确显示:
user@computer ~]$ echo $NCARG_ROOT
/usr/local/ncl
但是,当我尝试 cd 到它时,我收到一个错误:
user@computer ~]$ cd $NCARG_ROOT
: No such file or directory.
路径 (/usr/local/ncl) 确实存在。似乎当变量被执行时,它对 shell 来说是空的(注意冒号之前应该有一些东西)。奇怪的是,c-shell 也会发生类似的情况。我将以下行添加到 /etc/csh.cshrc 的底部,并在切换 shell 后遇到同样的问题:
setenv NCARG_ROOT /usr/local/ncl
改变外壳
user@computer ~]$ cd $NCARG_ROOT
: No such file or directory
我找到了一种解决方法。将相同的导出行添加到 ~/.bash_profile 似乎可行。但据我了解,这应该按照我最初的方式工作,还是我错过了什么?
我正在使用 Scientific Linux 6.10,它是 Red Hat Enterprise Linux 的重建版本。