source命令 与 设置环境变量的四个文件 (设置永久环境变量)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了source命令 与 设置环境变量的四个文件 (设置永久环境变量)相关的知识,希望对你有一定的参考价值。
参考技术A 1111source FileName
作用:在当前bash环境下读取并执行FileName中的命令。
注:该命令通常用命令“.”来替代。
如:source /etc/profile 与 . /etc/profile是等效的。
我从网上得知,在ubuntu中,使用source /etc/profile命令可以使新建立的环境变量立刻生效而不用重新启动系统,但是
如题,当我使用source /etc/profile这个命令之后,新的环境变量只能在一个终端里面有效,而当我把这个终端关闭重新再打开另一个终端时,刚才有效的环境变量就没了。
原因见下↓
2222
在Ubuntu中有如下几个文件可以设置环境变量
1、/etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件,此 文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。
2、/etc/environment:在登录时操作系统使用的第二个文件,系统在 读取你自己的profile前,设置环境文件的环境变量。
3、~/.bash_profile:在登录时用到的第三个文件是.profile文 件,每个用户都可使用该文件输入专用于自己使用的shell信息,当用 户登录时,该 文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该 文件被读取.
4、~/.bashrc:该文件包含专用于你的bash shell的bash信 息,当登录时以及每次打开新的shell时,该该文件被读取。
几个环境变量的优先级
1>2>3
区别:
/etc/profile、/etc/bash.bashrc文件是针对所有用户来说的,每个用户登录时都会执行,其中/etc/profile只执行一次,而/etc/bash.bashrc在每次Shell登录时都会执行。
~/.profile、~/.bashrc文件是针对单个用户来说的,每个用户目录下都会有这两个文件,其中~/.profile在Login Shell登录时执行,~/.bashrc在Non-login Shell登录时执行。
相关概念:
Login Shell:需要输入账号密码Shell,比如tty1-tty6终端、通过ssh登录的终端
Non-login Shell:不需要输入账号密码的Shell,比如图形模式下Ctrl+Alt+T得到的Terminal、Shell下的子进程
设置永久环境变量
1.环境变量配置中,要先删除.bash_profile中的三行关于.bashrc的 定义,然后把环境变量配置在.bashrc中
2.选择要使用的java环境:update-alternatives –config java
3.要使得刚修改的环境变量生效:source .bashrc
4.查看环境变量:env
可以放到/etc/bash/bashrc,这样就是系统级的
以上是关于source命令 与 设置环境变量的四个文件 (设置永久环境变量)的主要内容,如果未能解决你的问题,请参考以下文章
source /etc/profile 是啥意思?这个命令不写又能怎么样?
Java环境变量设置成功后运行cmd时提示错误 不是内部或外部命令,也不是可运行的程序或批处理文件