setenv 路径优先级

setenv 路径优先级

我必须包含相同软件的路径,但安装在两个不同位置的两个不同版本,因为我没有这些文件的编辑权限,并且这些不同位置中有一些其他软件,所以我需要包含这两个目录。

第一个目录$HOME包含许多软件,而第二个目录/grid/common/包含较少但都是较新的版本。因此,在定义路径环境变量时,我希望第二个文件夹位于第一个文件夹之前。

在我的脚本中:

setenv LD_LIBRARY_PATH $HOME/lib:/grid/common/lib

/grid/common/先于$HOME还是$HOME先于/grid/common/在这种情况下

答案1

后者:$HOME/lib先于(覆盖)/grid/common/lib。按照惯例,提供以冒号分隔的目录路径列表的环境变量来自左到右

POSIX列出了几个“路径”变量,都是从左到右处理的,包括CDPATH, NLSPATH, PATH。奇怪的是它没有提到这个(它比列出的几个变量更常用)。

通常,文档不会说从左到右,而只是说“顺序”,假设读者的文化偏见填写了其余的细节:

相关内容