1-4使用函数添加环境变量

1.4使用函数添加环境变量

当你使用源代码构建并安装程序时,通常需要为新的可执行文件和库文件添加特定的路径。

1.4.1实战演练

这个例子展示了如何将新的路径添加到环境变量的起始部分。第一个例子利用我们目前所讲过的知识来实现,第二个例子创建了一个函数来简化修改操作。

1.

g++可以链接到动态库,根据变量LD_LIBRARY_PATH。也可以指定-L

export PATH=/opt/myapp/bin:$PATH
export LD_LIBRARY_PATH=/opt/myapp/lib; $LD_LIBRARY_PATH
2.

我们可以在.bashrc文件(在用户根目录下)中定义如下函数,简化路径添加操作:

prepend() { [ -d "$2" ] && eval $1=\"$2':'\$$1\" && export $1; }

使用方法

prepend PATH /opt/myapp/bin 	#注意:必须是根目录开始寻找的,已经存在的文件夹
prepend LD_LIBRARY_PATH /opt/myapp/lib

**优化:**在进行添加时,如果变量为空,则会在末尾留下一个:。要解决这个问题,可以对该函数再做一些修改:

prepend() { [ -d "$2" ] && eval $1=\"$2\$\{$1:+':'\$$1\}\" && export $1 ; }
eval $1=\"$2’:’\1\"

在这个函数中,我们引入了一种shell参数扩展的形式:

${parameter:+expression}

如果parameter有值且不为空,则使用expression的值。通过这次修改,在向环境变量中添加新路径时,当且仅当旧值存在,才会增加:。