Linux中Bash环境变量的配置

在Linux中,我们一般将环境变量信息配置到不同的文件中,常用的配置文件有

  • /etc/profile
  • /etc/bashrc
  • ~/.bash_profile
  • ~/.bashrc
  • ~/.bash _logout

上面几个配置主要是在交互式登录Shell和交互式非登录Shell有区别,会加载不同的配置。

交互式登录Shell

就是登录Linux系统,你输入用户名和密码后执行的,或su -l. 用户名方式

非登录Shell

就是你进入系统后,开一个终端Bash执行的。

/etc/profile

一般为系统配置,为系统的每个用户设置环境信息, 当用户第一次登录时,该文件被执行, 并从/etc/profile.d目录的配置文件中搜集shell的设置.

/etc/profile的修改必须得重启才会生效,而且每个用户都是有效的。

/etc/profile.d/

可以理解为/etc/profile的一部分,只不过可以根椐类别或功能将配置拆分成若干个文件,这样更清晰也便于维护。

/etc/bashrc

为每个运行 Bash Shell 的用户执行该文件,当Bash Shell打开时,该文件被执行,其配置对所有使用bash的用户打开的每个Bash都有效。当被修改后,不用重启只需要打开一个新的 Bash 即可生效。

~/.bash_profile

文件在用户目录下,为当前用户设置专属的环境信息和启动程序,当用户登录时该文件执行一次,并执行当前用户的 .bashrc 文件。如果有修改,也需要重启才能生效。

~/.bashrc

为当前用户设置专属的 Bash 信息,当每次打开新的Shell时,该文件被执行。如有修改,不需要重启只需要开一个新的Shell终端就行了。

~/.bash_logout

当前用户每次退出Bash Shell时执行该文件。

以上需要重启才能生效的文件,是通过类似 source ~/.bash_profile这样的方式暂时生效的,并不是真的重启电脑。

posted @ 2020-04-08 00:43  随彦心MO  阅读(4168)  评论(0编辑  收藏  举报