当环境变量配置的文件夹中,由很多同名的命令;我们如何配置环境变量,来确定执行哪个命令呢?

假如当前存在的问题是:

/bin/bazel 存在命令的版本为 0.18.0 

/home/yaoxu/bin/bazel 存在的命令的版本为 0.10.0 

我们应该如何配置环境变量,来确定执行哪个版本呢?

通过我的实验,环境变量是逐层覆盖的,越在后面的环境变量优先级越高;如果系统中默认是 0.18.0 版本的命令;

我们本地又新安装了一个版本,为了默认使用我们自己的版本。我们可以进行如下配置,进行环境变量覆盖:

export PATH=$PATH:/home/y/bin/

cmake 时:(我觉得具体策略还是,进行尝试为好;)

export PATH=/home/y/cmake-3.15.4-Linux-x86_64/bin:$PATH

使用上述方法,我们既可以解决问题;为了每次bash打开的时候都执行,我们可以使用把上述命令写入到.bashrc 中;

本文章中描述的问题,在多用户使用的高性能计算环境中,或者多用户的linux GPU 主机上,经常会出现;

保持更新,转载请注明出处;更多内容,请关注 cnblogs.com/xuyaowen;

posted @ 2019-10-14 15:05  "Michael_Xu"  阅读(1253)  评论(0编辑  收藏  举报