/etc/profile
、/etc/bashrc
、~/.bashrc
和~/.bash_profile
的区别LIBRARY_PATH环境变量用于在程序编译期间查找动态链接库时指定查找共享库的路径,例如,指定gcc编译需要用到的动态链接库的目录。设置方法如下(其中,LIBDIR1和LIBDIR2为两个库目录):
export LIBRARY_PATH=LIBDIR1:LIBDIR2:$LIBRARY_PATH
LD_LIBRARY_PATH环境变量用于在程序加载运行期间查找动态链接库时指定除了系统默认路径之外的其他路径
export LD_LIBRARY_PATH=LIBDIR1:LIBDIR2:$LD_LIBRARY_PATH
注意:LD_LIBRARY_PATH中指定的路径会在系统默认路径之前进行查找
该文件登录操作系统时,为每个用户设置环境信息,当用户第一次登录时,该文件被执行。也就是说这个文件对每个shell都有效,用于获取系统的环境信息。
为每一个运行bash shell的用户执行此文件,当bash shell被打开时,该文件被读取。也就是说,当用户shell执行了bash时,运行这个文件。
profile用于登录式shell, 而bashrc用于每个交互式shell
该文件存储的是专属于个人bash shell的信息,当登录时以及每次打开一个新的shell时,执行这个文件。在这个文件里可以自定义用户专属的个人信息。
在刚登录Linux时,
/etc/profile
文件~/.bash_profile
、 ~/.bash_login
或~/.profile
文件中的其中一个,执行的顺序为:~/.bash_profile
、 ~/.bash_login
、 ~/.profile
。~/.bash_profile
文件存在的话,一般还会执行 ~/.bashrc
文件。准确的说,当shell是交互式登录shell时,读取.bash_profile文件,如在系统启动、远程登录或使用su -切换用户时;当shell是交互式登录和非登录shell时都会读取.bashrc文件,如:在图形界面中打开新终端或使用su切换用户时,均属于非登录shell的情况。
.bash_profile只在会话开始时被读取一次,而.bashrc则每次打开新的终端时,都会被读取。