2012-09-22 65 views
2

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

+0

出口PATH = “/路径/是/我/想” – jordanm

回答

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" 
+2

+1用于将已知路径添加到PATH的头部。试图去除路径比必要的更复杂。 – chepner