序言:
环境变量是操作系统环境设置的变量,适用于整个系统的用户进程;
环境变量可以在命令中设置,并且用户注销的时侯将会遗失这种设置值;
若要重复适用,则最好在.profile中定义;环境变量的使用与本地变量的使用方式相同,
然而在使用之前,必须用export命令导入。
一、环境变量文件介绍
Linux中环境变量包括系统级和用户级,系统级的环境变量是每位登陆到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的环境变量linux 环境变量的文件查看,所以管理环境变量的文件也分为系统级和用户级的。
Linux的变量种类
按变量的生存周期来界定,Linux变量可分为两类:
1.永久的:须要更改配置文件ubuntu linux,变量永久生效
2.临时的:使用export命令申明即可,变量在关掉shell时失效
三、Linux环境变量文件
linux变量文件有/etc/environment或/etc/profile或~/.profile或/etc/bash.bashrc或~/.bashrc,以及/.bash_profile(通常是用户在自己目录下新建的),/.bash_logout.
系统级
1./etc/environment:
是系统在登录时读取的第一个文件,设置整个系统的环境变量,只要启动系统才会读取该文件,用于为所有进程设置环境变量。系统使用此文件并不执行此文件中的命令,而是按照Key=Value模式的代码,假如要在此文件中定义PATH环境变量,须要执行:PATH=$PATH:/xxx/bin
2./etc/profile:
此文件是系统登入执行的第二个文件linux 环境变量的文件查看,为系统的每位用户设置环境信息。当用户第一次登录时,该文件执行,并从/etc/profile.d目录中的配置文件搜索shell的设置(可以用于设定针对全系统所有用户的环境变量,环境变量周期是永久的)
3./etc/bashrc:
这个文件是针对所有用户的bash初始化文件,在此设定中的环境信息将应用与所有用户的shell中,此文件会在用户每次打开shell时执行一次。(即每次新开一个终端,就会执行/etc/bashrc)
用户级(这种文件处于家目录下):~/.profile:对应当前登入用户的profile文件,用于订制当前用户的个人工作环境(变量是永久性),每位用户都可使用该文件输入专用于自己使用的shell信息,当用户登入时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。这儿是推荐放置个人设置的地方
2.~/.bashrc:该文件包含专用于你的bashshell的bash信息,当登陆时以及每次打开新的shell时,该文件被读取。(~/.bashrc只针对当前用户,变量的生命周期是永久的)
3.~/.bash_profileor./bash_login:/.bash_profile是交互式login形式步入bash运行的,~/.bashrc是交互式non-login形式步入bash运行的一般两者设置大致相同,所以一般后者会调用前者。每位用户都可使用该文件输入专用于自己使用的shell信息,当用户登入时linux下载工具,该文件仅仅执行一次。默认情况下,他设置一些环境变量,执行用户的.bashrc文件。(假如~/目录下没有.bash_profile则新构建一个)这儿是推荐放置个人设置的地方
当一个shell关掉时,在bash_profile中定义的系统变量则会失效。为此,每打开一个新的shell时都要运行一次sourcebash_profile.并且针对当前用户。
4.~/.pam_environment:用户级的环境变量设置文件,没有做测试,不晓得管不管用。
5.~/.bash_logout:当每次退出系统(退出bashshell)时,执行该文件。另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能承继/etc/profile中的变量,她们是"母子"关系。
参考文章: