红联Linux门户
Linux帮助

使用bash判断PATH中是否存在某个路径

发布时间:2015-11-18 15:02:22来源:linux网站作者:bendanban

在source设置环境变量的时候,有些时候可能会设置两次,导致增加系统的路径搜索时间,或者让自己看环境变量的时候搞得怪不爽的。

为了解决这个问题,我们可以在设置相应的环境变量之前,先判断一下是否已经设置过,如果设置过,那就不要在设置了,如果没有设置呢,当然你就可以设置下啦。


我用一个函数来判断参数2的字符串是否存在与参数1中

function isexist() 

source_str=$1 
test_str=$2 
strings=$(echo $source_str | sed 's/:/ /g') 
for str in $strings 
do   
if [ $test_str = $str ]; then 
return 0 
fi   
done 
return 1 


所以我们可以用一个判断来测试下这个函数就行了,

举个例子使用下这个函数,

我想设置/opt/mpich/3.0.4/bin这个目录到环境变量PATH中。可以这样做

if isexist $PATH /opt/mpich/3.0.4/bin; then  
echo "no need to set it ..." 
else  
export PATH=/opt/mpich/3.0.4/bin:$PATH 
fi 


OK 了,测试下吧。


BASH如何获得某个目录下的某类文件的文件名:http://www.linuxdiyf.com/linux/15857.html