从$ PATH中排除特定目录

时间:2012-09-22 07:25:07

标签: linux bash unix

我的系统上有多个MPI变体。每个用于编译特定的应用程序。我正在寻找一个脚本来从$ PATH中排除特定目录,以使用相应的MPI包装应用程序。有没有简单的方法呢?

1 个答案:

答案 0 :(得分:6)

也许有些事情如下:

with-excluded-path () {      
    echo "$PATH" | sed "s,$1:,,g"
}

or 

with-excluded-path () {
    echo "$PATH" | awk -vORS=":" -vRS=":" '$1 == "'$1'" { next }; {print $1}'
}

PATH=$(with-excluded-path "/path/to/exclude") /bin/application

或者只需将所需的MPI路径添加到PATH的头部:

export PATH="/opt/the/mpi/i/want:$PATH"